2

Node.js と Bookshelf を使用して 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データベースには、 andフィールドを持つ conversations_users テーブルに加えて、会話とユーザー テーブルがありconversation_idます。

そのため、ドキュメントを調べてきましたが、指定された 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)
  })
}
4

1 に答える 1