i have follow LINKhas_many: через некоммерческие ассоциации
но это не спасательные ассоциации.
My Model являются:
class Shift < ActiveRecord::Base
has_many :week_shifts, :dependent => :destroy
has_many :weeks, :through => :week_shifts, :dependent => :destroy
accepts_nested_attributes_for :weeks
end
class Week < ActiveRecord::Base
has_many :week_shifts, :dependent => :destroy
has_many :shifts, through: :week_shifts, :dependent => :destroy
end
class WeekShift < ActiveRecord::Base
belongs_to :week
belongs_to :shift
end
и _form является:
<% @weeks = Week.find(:all) %>
<% @weeks.each do |week| %>
<div class="field">
<%= check_box_tag 'week_ids[]', week.id, @shift.weeks.include?(week) %>
<%= week.day %>
</div>
<% end %>
<%= hidden_field_tag 'week_ids[]', '' %>
выход это
Оказываемые сдвиги/edit.html.erb в макетах/приложений (109.3ms) Завершено 200 OK в 119ms (Просмотров: 44.4ms | ActiveRecord: 73.0ms) Начато PATCH "/ shifts/3 »для 127.8.96.129 в 2014-01-23 06:46:58 -0500 Обработка с помощью ShiftsController # обновление как HTML Параметры: {" utf8 "=>" ✓ ", " authenticity_token "=>" Ltd3Ln5YJcRf40wQiPeGC + rRVeeGTpU + X1pUGjxbN6M = ", " shift "=> {" cod "=>« CN »,« nome »=>« Centrale Notte »,« descr »=>« Operatore Centrale Notte »,« stato »=>« 1 », «inizio (4i)» => «00», «inizio (5i)» => «00», «штраф (4i)» => «08», «штраф (5i)» => «00»} "week_ids" => ["1", "2", "3", "4", ""], "commit" => "Update Shift", "id" => "3"}