【发布时间】:2018-05-23 22:18:22
【问题描述】:
我尝试使用一组复选框创建一个在嵌套 for 中工作的验证。
集合在 each.do 循环中。
<%= simple_form_for @questionnaire do |f| %>
<% @questions.each do |question| %>
<%= question.name %>
<%= f.collection_check_boxes :answer_ids, Answer.where(question_id: question.id), :id, :content %>
<% end %>
<% end %>
这是在Questionnaire 表单中。
所以我尝试在Questionnaire 模型中验证answer,但我需要为每个问题都这样做:每个question 至少应该选中一个复选框。
任何想法都会很棒! 提前谢谢!
编辑:
我的3个模型之间的关系:
class Questionnaire < ActiveRecord::Base
has_many :answers
has_many :answers, :through => :answers
end
class Question < ActiveRecord::Base
has_many :questionnaires
has_many :answers, through: :questionnaires
end
class Answer < ActiveRecord::Base
belongs_to :question
has_many :questionnaires, :through => :answers
end
【问题讨论】:
-
你如何确定这些
answer_ids属于这个question,我的意思是questionnarie和question之间是否有任何关系,或者我错过了什么? -
@rony36 好点,我更新了我的问题。
标签: ruby-on-rails ruby-on-rails-4 activerecord checkbox