我正在使用一个调查模型制作一个调查应用程序,该模型有很多问题本身就有很多答案。表单部分如下所示:
<%= form_for(@survey) do |f| %>
<% if @survey.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@survey.errors.count, "error") %> prohibited this survey from being saved:</h2>
<ul>
<% @survey.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %><br>
<%= f.text_field :name %>
</div>
<%= f.fields_for :questions do |question_attribute| %>
<p>
<%= question_attribute.label :content, "Question" %><br />
<%= question_attribute.text_area :content, :rows => 3 %>
</p>
<%= question_attribute.fields_for :answers do |answer_attribute| %>
<p>
<%= answer_attribute.label :content, "Answer" %>
<%= answer_attribute.text_field :content %>
</p>
<% end %>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
并由编辑和新操作调用。 快速注意事项:当编辑操作调用时,rails如何填充表单中之前的问题/答案值?
我想这样做,以便当我访问每个调查的编辑页面时,每个问题旁边都会有一个“删除”链接,当我按下该删除链接时,问题将从调查中删除,我将被引导回编辑页面。我该怎么做到这一点?我看了一些railscast,但他们所做的一切都已经被弃用了。
此外,就在我show
调查时,问题没有编号,即问题2,问题2等,每个问题的答案都没有编号a),b),c ),d),e)。在创建调查时,如何使轨道自动编号?我的节目表格如下:
<p id="notice"><%= notice %></p>
<p>
<strong>Name:</strong>
<%= @survey.name %>
</p>
<ol>
<% @survey.questions.each do |question| %>
<li><%= question.content %>
<ul>
<% for answer in question.answers %>
<li><%= answer.content %></li>
<% end %>
</ul>
</li>
<% end %>
</ol>
<%= link_to 'Edit', edit_survey_path(@survey) %> |
<%= link_to 'Back', surveys_path %>