fields_for not rendering – rails 3

最后转移到Rails 3进行一个新项目并且已经遇到了一个菜鸟问题。

试图做一个简单的嵌套表单。

2个型号:列表和任务

列表模型

class List :destroy accepts_nested_attributes_for :tasks, :reject_if => lambda { |a| a[:name].blank? } end 

任务模型

 class Task < ActiveRecord::Base belongs_to :list end 

列表控制器

 def new @list = List.new 3.times{ @list.tasks.build } end 

列表/ new.html.erb

 {:action=>"create"} do |f| %> 'big' %>   

"submit", :name => "submit", :class => "form_submit", :disabled => false, :disable_with => "Please wait..." %>

使用debug @list我可以看到我在控制器中创建的3个任务,但是fields_for将不会呈现。

有任何想法吗?

在rails 3中,您应该使用<%=而不是<%来表示form_forfields_for 。 看看是否有帮助。

在您的列表控制器中,您需要添加

  def new @list = List.new 3.times{ @tasks = @list.tasks.build } end