Javascript 用于管理元素和组的最简单模式

Javascript 用于管理元素和组的最简单模式,javascript,mongodb,simple-schema,Javascript,Mongodb,Simple Schema,我想创建一个列表,到目前为止,我有以下架构: new SimpleSchema({ element: { type: String, optional: true }, note: { type: String, optional: true }, order: { type: Number, optional: true } }); 但现在我想添加组,它也像一个项目: Pancakes Vegetables Tomatoes

我想创建一个列表,到目前为止,我有以下架构:

new SimpleSchema({
    element:    { type: String, optional: true },
    note:       { type: String, optional: true },
    order:      { type: Number, optional: true }
});
但现在我想添加组,它也像一个项目:

Pancakes
Vegetables
    Tomatoes
    Salad
Orange juice
所以“蔬菜”是一个组,其中有两个元素,但“蔬菜”本身主要是可排序的,这意味着这个示例类别主要由三个元素组成:煎饼、蔬菜和橙汁。蔬菜可以向下滑动以显示内容

对于这个puplose,最简单的模式是什么?我是说嵌套较少的SimpleSchema元素-如果没有任何嵌套模式是可能的话

我想做的是,编辑器可以选择列表中的一些元素并将它们放入一个组中。所有主要元素和组本身都可以通过拖放进行排序。所以我需要元素/组顺序的信息


我希望我能解释我需要做什么。

您正在创建一棵树。在数据库中,尤其是在mongodb中,有多种方式来表示:


我经常发现祖先数组是最佳选择。

好的,我如何为
\u id
选择最佳值?因为我有1-20个元素(动态),标题最多250个字符…所以始终使用
ObjectId
(直到您有充分理由不使用)。对Id重复使用其他字段几乎总是会导致以后的痛苦。