fields_for如何知道要创建多少个字段?

时间:2016-06-25 03:11:38

标签: ruby-on-rails ruby

我想我对fields_for的工作原理有点困惑。我有一个动作:

  3.times { @submitted_quiz.submitted_answers.build }

如果我在相关视图中写了form_for这样的内容:

<%= form_for(@submitted_quiz) do |f| %>
<%= f.hidden_field :quiz_id, :value => @quiz.id %>
<%= f.hidden_field :name, :value => @quiz.name %>

<%= f.fields_for (:submitted_answers) do |ff| %>

  <%= ff.label :content, "Answer" %><br />
    <%= ff.text_area :content, :rows => 3 %>
<% end %>


<%= f.submit %>
<% end %> 

fields_for如何知道运行三次?

1 个答案:

答案 0 :(得分:0)

Rails只会检查你的submitted_quiz有多少个submitted_answers,并生成适当数量的字段(显然每个答案一个)。