2011-10-16 25 views
0

我有一个评论模型与acts_as_nested_set启用,但当我尝试做这样的事情(对于嵌套评论),我收到错误“comment_comments_path找不到”,大概是因为默认路径doesn不适用于Awesome Nested Set。我如何解决这个问题?使用form_for与真棒嵌套集

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

      <%= f.text_area :content, :placeholder=>'What do you think?'%> 

      <%= f.submit 'Submit Reply'%> 
      <% end %> 

我也试过这样:

  <%= form_for(@comment) do |f| %> 

      <% @comment.children.each do |sub| %> 
      <%= f.fields_for :children, sub do |child| %> 

      <%= child.text_area :content, :placeholder=>'What do you think?'%> 

      <%= f.submit 'Submit Reply'%> 
      <% end %> 
      <% end %> 
      <% end %> 

,但它并没有产生一个文本框,对我来说,在输入

回答

0

你是非常接近的,是你必须先建立它。再有字段,因此这样的:

<% @comment.children.build %> 

<%= form_for([@comment]) do |f| %> 
    <%= f.fields_for :children do |child| %> 
    <%= child.text_area :content, :placeholder=>'What do you think?'%> 
    <% end %> 
    <%= f.submit 'Submit Reply'%> 
    <% end %> 
<% end %> 

这将对所有现有的儿童+的新形式。如果你只想要一个新的孩子的形式,那么你会想要这个:

<%= form_for([@comment]) do |f| %> 
    <%= f.fields_for @comment.children.build, :children do |child| %> 
    <%= child.text_area :content, :placeholder=>'What do you think?'%> 
    <% end %> 
    <%= f.submit 'Submit Reply'%> 
    <% end %> 
<% end %>