帆中的多对多关系

在我的帆应用程序(真正新手帆),我有3个模型:
– 用户(电子邮件,密码)
– 团体(姓名)
– 项目(名称)
我希望组模型充当用户和项目之间的多对多关系,如何实现?

我正在使用帆0.9.4,我已经读了关于关系的问题#124,但不真正了解,如果这可以应用到现有的模型(也包含自己的属性上的itemId和userId)。

从Sails.js v0.9.4开始,框架还不支持关联。

Balderdash(Sails的开发人员)已经指出,关联和事务都在产品发布的路线图上,并在GitHub的#124问题上logging了一个可能的API

目前有一个Waterline的开发分支 (Sails使用的ORM适配器)支持关联,但是在寻找关于新API的文档时可能会遇到一些问题

现在,您将不得不变得富有创造性,并寻找替代方法来连接您的用户和物品

如果您切换到v0.10分支,您可以尝试以下操作,

// Users.js module.exports = { tableName: 'user', attributes: { email: 'STRING', password: 'STRING', } items: { collection: 'item', via: 'users', through: 'useritem' } } // Items.js module.exports = { tableName:'item', attributes: { name: 'STRING' } users: { collection: 'user', via: 'items', through: 'useritem' } } // Groups.js module.exports = { tableName: 'group', tables: ['user', 'item'], junctionTable: true, attributes: { id: { primaryKey: true, autoIncrement: true, type: 'integer' }, user_items: { columnName: 'user_items', type: 'integer', foreignKey: true, references: 'user', on: 'id', via: 'item_users', groupBy: 'user' }, item_users: { columnName: 'item_users', type: 'integer', foreignKey: true, references: 'item', on: 'id', via: 'user_items', groupBy: 'item' } } } 

我不得不通过这个文件中的代码来找出发生了什么事情。