ruby-on-rails – Rails 3 has_many:通过Form

无法弄清楚为什么这不起作用.首次使用:has_many => :通过

继续保持未初始化的持续User :: Employmentship

class User < ActiveRecord::Base
  has_many :employmentships
  has_many :companies,:through => :employmentships
  accepts_nested_attributes_for :employmentships,:allow_destroy => true,:reject_if => proc { |obj| obj.blank? }
  attr_accessible :email,:password,:password_confirmation,:firstname,:lastname,:username,:role,:company_ids
end

class Company < ActiveRecord::Base
  has_many :employmentships
  has_many :users,:through => :employmentships
end


/views/users/_form.html.erb
<p>
   <%= for company in Company.all do %>
     <%= check_Box_tag "user[company_ids][]",company.id,@user.companies.include?(company) %>
     <%= company.name%>
   <% end %>
</p>

编辑 – 如果我将@ user.companies.include?(公司)更改为false我得到表单,但没有更新.

编辑2 –

class Employmentship < ActiveRecord::Base
  belongs_to :company
  belongs_to :user
  attr_accessor :company_id,:user_id
end

解决方法

您的就业模式在哪里? has_many_through用于浏览另一个模型.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...