0
好的,这是我的代码。如何将自定义属性添加到form_for?
<%= form_for @quiz do |f|%>
<% @questions.shuffle.each do |q| %>
# get_answers returns an array of 4 random answers
<% answers = q.get_answers %>
<%= f.label q.inquest %><br>
<% answers.each do |a| %>
<%= f.radio_button <need help here!>, a %>
<%= f.label <need help here!>, a %><br>
<%= f.hidden_field <need help here!>, q.id %>
<% end %>
<% end %>
<% end %>
我测验表具有属性
concept_id
user_id
我怎么添加自定义属性,我可以有在后的动作获得?它应该是动态的,因此它可以随着有多少问题进行扩展。我想要这样的东西给我的参数。
{
user_answers: {
question1: {
:question_id
:answer
{
}
}
根据有多少问题存在,它会去像问题1,2,3,4等。
的hidden_field将与question_id携带而radio_button将携带的答案。我不需要它来保存或任何东西,我只需要访问它们
您好,欢迎堆栈溢出。酷 - 看起来不错..所以我会开始使用'each_with_index'(所以你知道你的答案),并使用索引作为表单字段的名称的一部分。例如'<%= f.hidden_field“question_id _#{idx}”,:value => q.id%>' –
谢谢!我只是补充说,我还为单选按钮添加了'<%= f.radio_button“answer#{index + 1}”,%>',但是我收到了未定义的方法错误。这是因为''answer#{index + 1}“'不是@quiz的属性。我如何得到这个工作? – LeongZeno
正如你所见,你可以使用'_tag'版本而不只是'form_for'版本:) –