我正在使用带有Bookshelf的Node.js来设置API。请求中的JSON看起来像这样
{
conversation: {
user_ids: [1, 2, 3, 4]
}
}
会话对象如下所示:
var Conversation = storeManager.bookshelf.Model.extend({
tableName: 'conversations',
users: function() {
this.belongsToMany(User)
}
})
用户看起来像这样:
var User = storeManager.bookshelf.Model.extend({
tableName: 'users',
conversations: function() {
return this.belongsToMany(Conversation)
}
})
数据库有一个会话和用户表以及一个具有user_id
和conversation_id
字段的conversations_users表。
所以我一直在阅读文档,我正在努力弄清楚如何创建一个与具有给定ID的现有用户有关系的会话对象。
到目前为止,这是我在控制器中的内容
ConversationController.prototype.create = function(req, res, next) {
// Create the conversation
Conversation.forge().set('users', req.body['conversation']['user_ids']).save().then(function(model) {
req.conversation = model
next()
}).catch(function(err) {
res.status(400).send(err)
})
}
答案 0 :(得分:1)
您需要在集合中使用add方法,如下所示:
Conversations_Users.add({userId:1,conversation_id:1});
然后致电
Conversations_Users.save()