Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Rails 3-嵌套形式,通过关联具有多个_Ruby On Rails 3_Nested Forms_Has Many Through - Fatal编程技术网

Ruby on rails 3 Rails 3-嵌套形式,通过关联具有多个

Ruby on rails 3 Rails 3-嵌套形式,通过关联具有多个,ruby-on-rails-3,nested-forms,has-many-through,Ruby On Rails 3,Nested Forms,Has Many Through,大家好,好久没来了。但是我回来了,因为我再次需要你的帮助。我有一个rails 3.0.9应用程序,我正在使用嵌套表单,并且通过关联获得了很多。当我创建一个实例时,效果非常好。当我尝试编辑时,问题就出现了。下面是一个更好的解释示例。(表名和属性仅用于解释) 表客户端 身份证 公司名称 地址 服务员 身份证 名字 姓 表触点 身份证 客户识别码 工人身份证 我的模型看起来像这样 class Worker < ActiveRecord::Base has_many :contac

大家好,好久没来了。但是我回来了,因为我再次需要你的帮助。我有一个rails 3.0.9应用程序,我正在使用嵌套表单,并且通过关联获得了很多。当我创建一个实例时,效果非常好。当我尝试编辑时,问题就出现了。下面是一个更好的解释示例。(表名和属性仅用于解释)

表客户端

  • 身份证
  • 公司名称
  • 地址
服务员

  • 身份证
  • 名字
表触点

  • 身份证
  • 客户识别码
  • 工人身份证
我的模型看起来像这样

class Worker < ActiveRecord::Base
  has_many :contacts, :dependent => :destroy
  has_many :clients, :through => :contacts, :foreign_key => 'client_id'
end

class Client < ActiveRecord::Base
  has_many :contacts, :foreign_key => "client_id",:dependent => :destroy
  has_many :workers, :through => :contacts, :foreign_key => 'worker_id'

  accepts_nested_attributes_for :workers, :allow_destroy => false
end

class Contact < ActiveRecord::Base
  belongs_to :worker, :foreign_key => "worker_id"
  belongs_to :client, :foreign_key => "client_id"
end
我将allow_destroy设置为false,因为我不想删除工作者本身,我只想删除联系人元组

有人知道我怎么解决这个问题吗??希望你能帮助我。。。谢谢

accepts_nested_attributes_for :workers, :allow_destroy => false