您好,我对 Ruby 非常陌生,目前正在使用两个模型和两个相应的数据库。Quiz
哪一个has_many
questions
。我试图让问题出现在测验“编辑视图”中,这就是我所拥有的。
当前不起作用的是“问题”的表单条目(请参阅下面的评论部分)。我认为我不太理解冒号前面的表达式。(例如:title、:quiz_date 等>)它们是常规变量吗?
无论如何,有问题的代码块成功地制作了一个表格,但使用:questions
它将数据库问题行中的所有信息放入表单字段(即id、问题、答案、可能的答案等)。但它不仅仅给了我问题字段的值。
但是,如果我将其更改为 :question (希望只获取问题表中问题字段的值),我会收到错误消息。我也尝试过:questions.question 和简单的 questions.question。这些都不起作用。
有什么建议么?
<%= form_for(@quiz) do |f| %>
<% if @quiz.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@quiz.errors.count, "error") %> prohibited this quiz from being saved: </h2>
<ul>
<% @quiz.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :title %><br />
<%= f.text_field :title %>
</div>
<div class="field">
<%= f.label :quiz_date %><br />
<%= f.date_select :quiz_date %>
</div>
<div class="field">
<%= f.label :reading %><br />
<%= f.text_field :reading %>
</div>
<div>
#the problem code
<% @quiz.questions.each do |questions| %>
<div class="question">
<%= f.label :questions %><br />
<%= f.text_field %>
</div>
<% end %>
#end problem code
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>