我有部分
= form.fields_for :cycles do |c|
%tr{:style=>"border-right:none;"}
%td{:width=>"16%"}
= c.text_field :day, :size=>6
= c.hidden_field :id
%td{:width=>"35%"}= c.text_field :hour, :size=>15
%td{:width=>"35%"}= c.text_field :hour_night, :size=>15
%td{:style => "width:7%;padding:0;border-right:none",:align=>"center"}
= c.hidden_field :_destroy
= link_to image_tag("panel_tools/delete.png",:size=>"15x15"), nil, :href =>"", :onclick => "check_nested_attr_destroy(this);return false;"
我从像这样的视图中调用它
= form_for(@schedule_of_working, @new_action ? {:url => schedule_of_workings_path} : {:url => schedule_of_working_path, :method=> :put}) do |f|
.....
= render(:partial=>'cycles', :collection => @schedule_of_working.cycles, :locals => {:form => f}) if @schedule_of_working.cycles.count > 0
我收到有关未定义方法表单的错误..
rails -v 3.1.0
答案 0 :(得分:0)
只有遵循惯例,Rails才能正常运作。
你应该避免使用:隐藏字段,带有表单的put
,以这种方式传递动作,我不确定你要在各个部分使用url做什么,但无论如何要避免这些你有充分的理由不按照惯例构建它。更多地关注您的路线以及如何设置资源,您的模型及其关系和您的观点应该是非常简约的。在他们中我不知道小时和小时是什么,或者是长度为15.混乱的东西。
因此,您的表单存在一些问题。我只是说重写它而不是具体的建议。它应该比这简单得多。我建议在表格上观看一些railscasts,例如
表单部分one,two或three