【问题标题】:Rails has and belongs to many does not keep relation informationRails 拥有和属于许多不保留关系信息
【发布时间】:2016-02-28 13:33:02
【问题描述】:

给定以下模型

class User < ApplicationRecord
  has_and_belongs_to_many :workspaces
end

class Workspace < ApplicationRecord
  has_and_belongs_to_many :users
end

此代码在workspacesusers_workspaces 中插入一条记录:

User.last.workspaces.create

但是,这个没有插入到users_workspaces

User.last.workspaces.new.save

我需要这样做:

w = Workspace.new
w.users << User.last
w.save

为什么?

【问题讨论】:

    标签: ruby-on-rails activerecord has-and-belongs-to-many


    【解决方案1】:

    您需要使用#build 方法,例如:

    User.last.workspaces.build.save
    

    collection.build(attributes = {})

    返回一个集合类型的新对象,该对象已经用属性实例化并通过连接表链接到该对象,但尚未保存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多