我正在构建一个必须为多个雇主分配作业的应用程序.
我已经构建了这些模型:
#assignment.rb
class Assignment < ActiveRecord::Base
has_many :employer_assignments
has_many :employers, :through => :employer_assignments
end
#employer.rb
class Employer < ActiveRecord::Base
has_many :employer_assignments
has_many :assignments, :through => :employer_assignments
end
#employer_assignment.rb
class EmployerAssignment < ActiveRecord::Base
belongs_to :employer
belongs_to :assignment
end
Run Code Online (Sandbox Code Playgroud)
现在我希望表单保存到employer_assignment表,但我用于表单的以下代码不起作用.
<div class="field">
<%= f.label :employer_ids %><br />
<%= collection_check_boxes(:assignment, :employer_ids, Employer.all, :id, :name) %>
</div>
Run Code Online (Sandbox Code Playgroud)
我确实在我的赋值控制器中添加了:employer_id,我尝试发送创建赋值的表单但不在employees_assignment表中创建记录.当我通过控制台添加它们(Assignment.last.employers << Employer.all)时,一切正常.我确定我错过了一些但却无法弄明白的东西.
提前致谢.