2016-07-15 4 views
0

У меня есть пункты меню, которые имеют определенные роли, которые делают ссылки на них ограничительными.Mongoose: Вставить модель в виде массива другой модели

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"}], 
      } 

     ] 

My MenuItemModel не заполняется в базе данных, и, естественно, ошибок не предоставляется.

Как бы я структурировал свою схему, чтобы данные семян, как в настоящее время раскладываются для ролей, работают?

Благодаря

ответ

0

Это сделал трюк для меня:

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) 
    }); 
Смежные вопросы