1. ホーム
  2. ruby-on-rails

ActiveAdminのhas_many問題;未定義のメソッド「new_record?

2023-11-16 05:54:21

質問

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

フォームを読み込もうとすると、次のようなエラーが発生します。

nil:NilClass に対して未定義のメソッド `new_record?' があります。

今のところhas_manyメソッドに分離しましたが、この先が分からなくなってしまいました。どんなアドバイスやヘルプでも構いませんので、よろしくお願いします。

どのように解決するのですか?

レシピモデルに次の行を追加してください。

accepts_nested_attributes_for :steps

この行はformtasticが必要とするものであり、active adminが必要とするものではありません。チェック https://github.com/justinfrench/formtastic formtasticのドキュメントをご覧ください。