Ruby on rails Rails simple_在值内形成较短的字符串=
我有一个应用程序,其中一个注册步骤是填写调查。调查在顶部有问题,答案作为单选按钮。我正在使用Ruby on rails Rails simple_在值内形成较短的字符串=,ruby-on-rails,simple-form,Ruby On Rails,Simple Form,我有一个应用程序,其中一个注册步骤是填写调查。调查在顶部有问题,答案作为单选按钮。我正在使用simple\u formgem创建如下表单: <%= simple_form_for :appropriateness_test_results, url: url do |f| %> <% randomize_questions.each_with_index.map do |q, i| %> <%= f.input "[#{i}][answer]
simple\u form
gem创建如下表单:
<%= simple_form_for :appropriateness_test_results, url: url do |f| %>
<% randomize_questions.each_with_index.map do |q, i| %>
<%= f.input "[#{i}][answer]", label: "#{i+1}. #{q[:question]}", collection: q[:answers], as: :radio_buttons, wrapper_class: 'input simple-radio-buttons'%>
<%= f.input "[#{i}][question]", as: :hidden, input_html: { value: q[:question] } %>
<%= f.input "[#{i}][id]", as: :hidden, input_html: { value: q[:id] } %>
<% end %>
<%= f.button :submit, 'Submit' %>
<% end %>
对于上面的代码,我认为它不必要地在两个地方呈现答案
,即是
和
。浏览器控制台的输出:
<span class="radio"><input class="radio_buttons required" type="radio" value="Yes" name="appropriateness_test_results[[0][answer]]" id="appropriateness_test_results_[0][answer]_yes">
<label class="collection_radio_buttons" for="appropriateness_test_results_[0][answer]_yes">
"Yes"
</label>
</span>
“是的”
当我只有是
或否
选项时,这不是一个问题,但我可以想象,如果答案很长,这将是一个问题,例如:
Lorem ipsum dolor sit amet,是一位杰出的献身者。这是一个巨大的挑战。悬挂式权杖,无前庭
我想这可能会造成混乱。有没有办法让
value=
中的一些较短字符串代替现在的完整答案?你可以用一个id代替完整的字符串,但问题是怎么做?这并不是将集合:q[:answers]
更改为集合:q[:id]
,因为我仍然需要以某种方式显示这些答案。因为您将答案存储在一个数组中,所以您可以使用索引对每个答案进行,使用索引设置值并将字符串打印给用户如果您知道如何基于每个带有执行此操作,我假设您知道如何在值=
的内部传递,例如foo'
,对吗?如果是,如果我可以在value=
中传递一些随机字符串,为什么要在视图中移动这样的逻辑?同样,如何传递这样的随机字符串?
<span class="radio"><input class="radio_buttons required" type="radio" value="Yes" name="appropriateness_test_results[[0][answer]]" id="appropriateness_test_results_[0][answer]_yes">
<label class="collection_radio_buttons" for="appropriateness_test_results_[0][answer]_yes">
"Yes"
</label>
</span>