具有has_many问题的ActiveAdmin;未定义的方法'new_record?'

时间:2011-08-26 14:52:00

标签: ruby-on-rails admin has-many formtastic activeadmin

我正在尝试为与Step具有has_many关系的Recipe模型自定义ActiveAdmin表单。

class Recipe < ActiveRecord::Base
  has_many :steps
end

class Step < ActiveRecord::Base
  acts_as_list :scope => :recipe

  belongs_to :recipe
end

我的ActiveAdmin文件中包含以下内容:

form do |f|
  f.has_many :steps do |ing_f|
    ing_f.inputs
  end
end

尝试加载表单时抛出以下错误:

  

未定义的方法`new_record?'为零:NilClass

到目前为止,我已经将它与has_many方法隔离开了但是我已经迷失了。任何建议和帮助将不胜感激!

2 个答案:

答案 0 :(得分:163)

转到您的食谱模型并添加以下行

accepts_nested_attributes_for :steps

该行是formtastic,非主动管理员所必需的。检查https://github.com/justinfrench/formtastic是否有形式文件

答案 1 :(得分:2)

class Recipe < ActiveRecord::Base

    attr_accessible :step_attributes

    has_many :steps

    accepts_nested_attributes_for :steps

end