2017-01-18 4 views
0

私はmongooseでレストランモデルを開発しています。mongooseモデルの多くのサブ文書を持つ価値がある

私はレストラン文書にカテゴリサブ文書の配列を持たせたいと思います。カテゴリにはサブディッシュの配列があり、ディッシュにもサブディクショナリの配列があります。

いいですか、いくつかのコレクション間でデータを分割する必要がありますか?

+0

食べ物が最も重要なことで、部分およびカテゴリは、食品の詳細です。私はレストラン>メニュー>料理> DishPortions、DishCategoryのようなデータをモデル化します。しかし、私はmongoコレクションを使っていませんので、そのモデルをmongoで実装するための具体的なアドバイスはありません。 – Plato

答えて

0

親子コレクションへの参照を含む複数のコレクションを作成します。マングースで

例:

const Category = new Schema({ 
    name: String, 
    dishes: [{ 
     type: Schema.Types.ObjectId, 
     ref: 'dish' 
    }] 
}); 

const Dish = new Schema({ 
    categories: [{ 
     type: Schema.Types.ObjectId, 
     ref: 'Category' 
    }], 
    name: String, 
    price: Number 
}); 

あなたのロジックに応じて、一方通行の関係(唯一の子または親)を使用することができます。

http://mongoosejs.com/docs/populate.html

関連する問題