web-dev-qa-db-ja.com

has_manyの問題があるActiveAdmin。未定義のメソッド「new_record?」

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?」 nil:NilClassの場合

これまでhas_manyメソッドに分離しましたが、これを過ぎて失われました。アドバイスやヘルプをいただければ幸いです!

74
nickpellant

レシピモデルに移動し、次の行を追加します

accepts_nested_attributes_for :steps

この行は、アクティブな管理者ではなく、formtasticで必要です。 https://github.com/justinfrench/formtastic を確認してください

163
Dan Gurgui
class Recipe < ActiveRecord::Base

    attr_accessible :step_attributes

    has_many :steps

    accepts_nested_attributes_for :steps

end
2
user5439847