У меня есть следующие модели направляющих:
class Release < ActiveRecord::Base
has_many :release_questionnaires, :dependent => :destroy
accepts_nested_attributes_for :release_questionnaires
...
end class
class ReleaseQuestionnaire < ActiveRecord::Base
belongs_to :release
belongs_to :milestone
...
end class
По моему мнению, код, у меня есть следующая форма.
<% form_for @release, ... do |f| %>
...
<table class="questionnaires">
<% f.fields_for :release_questionnaires, @release.release_questionnaires.sort_by{|ra| ra.questionnaire.name} do |builder| %>
...
<% end %>
</table>
<% end %>
Это работает и позволяет мне просматривать и редактировать анкеты, как желаемый. Однако у меня есть дополнительное требование для выламывания анкет в их собственные таблицы, сгруппированные этапом, они связаны с, а не в единственной таблице. Появляется, как будто group_by метод является дизайном для выполнения этого, но я не могу заставить это работать, как желаемый в теге.
Может случиться так, что я пропускаю что-то очевидное, поскольку я - новичок... Любая справка ценится.
Это то, что вы ищете?
<% form_for @release, ... do |f| %>
...
<% @release.release_questionnaires.group_by {|rq| rq.milestone }.each do |milestone, questionnaires_group| %>
<table class="questionnaires">
<% f.fields_for :release_questionnaires, questionnaires_group.sort_by{|rq| rq.name} do |builder| %>
...
<% end %>
</table>
<% end %>
<% end %>