【问题标题】:Mongoose: Embed a model as array of another modelMongoose:将模型嵌入为另一个模型的数组
【发布时间】:2016-07-16 01:56:41
【问题描述】:

我的菜单项具有某些角色,使指向它们的链接受到限制。

1. RoleModel.js

     const MenuRoleSchema = new mongoose.Schema ({
          name: { type: String, unique: true}, { _id: true });

     exports.MenuRoleModel = mongoose.model('MenuRoleModel', MenuRoleSchema, 'menu_role');

2。 MenuItemModel.js

    const MenuItemSchema = new mongoose.Schema({
      ......
      roles: [ { type: MenuRoleModel } ] 
    });

3. MenuItemSeed.js

   const data = [
          {
            .....
            "roles": [{"name": "RoleA"}],
          },
          {
            ....
            "roles": [{"name": "RoleA"}, {"name": "RoleB"}],
          }

        ]

我的 MenuItemModel 没有填充到数据库中,自然不会提供任何错误。

我将如何构建我的架构,以便当前为角色布置的种子数据有效?

谢谢

【问题讨论】:

    标签: mongoose mongoose-schema


    【解决方案1】:

    这对我有用:

    1. RoleModel.js

        (1)export const MenuRoleSchema = new mongoose.Schema ({
          name: { type: String, unique: true}, { _id: true });
    
        exports.MenuRoleModel = mongoose.model('MenuRoleModel', MenuRoleSchema, 'menu_role');
    

    2。 MenuItemModel.js

         (2)import {MenuRoleSchema} from './RoleModel';
    
            const MenuItemSchema = new mongoose.Schema({
            ......
            roles: [ { type: MenuRoleSchema } ] (3)
         });
    

    【讨论】:

      猜你喜欢
      • 2017-09-26
      • 2020-05-07
      • 2018-11-26
      • 2017-02-10
      • 2013-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多