因为我5天前开始在Rails中编程。通过查看我的测试中的行为,我正在学习框架的很多方面,答案是完美的,但这次我有了这个,我不知道如何处理它: 我得到的信息就是这个......
#<#:0x36df6c8>
的未定义方法`task_task_task_task_task_path'
这是我的观点:
<%= form_for @tasks do |t| %>
<div id="task_list">
<% @tasks.each do |task| %>
<li id="task">
<% if task.done == false %>
<%= t.check_box :done, :checked => task.done, :checked_value => true, :unchecked_value => false %> <%= task.name %>
<% else %>
<%= t.check_box :done, :checked => task.done, :checked_value => true, :unchecked_value => false, :disabled => "disabled" %> <%= task.name + "(done)" %>
<% end %>
</li>
<% end %>
<%= t.submit "Mark selected as done", :action => "update" %>
</div>
<% end %>
我已经多次查看表单并提交文档,但我无法理解。此表单适用于许多实例,并使用新的布尔值更新每个实例。
谢谢。
答案 0 :(得分:1)
你不能神奇地向服务器提交一组数据,Rails表单助手是针对单个对象而不是针对集合。
但是,有一些方法可以将一组值提交回服务器,例如,您可以将[]附加到复选框名称属性,这将强制rails在服务器端创建一个值数组。
有关详细讨论,请参阅this documentation point 7.1