0

我想在“帖子视图”中创建一个“评论”表单

但是这个助手不能工作

 <%= form_for([@post, @comment]) do |f| %>
   ...
 <% end %>

rvm 1.9.2 轨道 3.0.3

编辑1:错误:

undefined method `model_name' for NilClass:Class

编辑 2提取的源代码(大约第 23 行):

20: <% end %>
21: </ul>
22: 
23: <%= form_for [@list,@item] do |form| %>
24:     
25: <%= form.text_field :due %>
26: <p><%= form.text_field :title %>

应用程序跟踪

app/views/lists/show.html.erb:23:in `_app_views_lists_show_html_erb___3300490552675426158_2162821280_4216612080991561324'
app/controllers/lists_controller.rb:22:in `show'

信息列表| has_many 项目。项目| 属于_to 列表

4

2 回答 2

3

看看这是否有效

<% form_for @post, :url => { :action => "create" } do |post_form| %>
  ...
  <% post_form.fields_for :comments do |comment_fields| %>
     Comment ID: <%= comment_fields.text_field :id %>
   <% end %>
<% end %>

您可以查看http://guides.rubyonrails.org/form_helpers.html(请参阅第 7.3 节使用表单助手)

于 2010-12-15T05:21:41.533 回答
0

好的,我做了什么。

路线

  resources :lists do
    resources :items
  end

列表控制器

  def show
    @list = List.find(params[:id])
    @item = @list.items.new


    respond_to do |format|
      format.html # show.html.erb
      format.xml  { render :xml => @list }
    end
  end

显示.html.erb

<%= form_for([@list, @item]) do |form| %>
 <p><%= form.text_field :title %>
 <%= form.submit %></p>
<% end %>
于 2010-12-15T13:35:55.997 回答