Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ActiveAdmin with has_many problem; undefined method 'new_record?'

I'm trying to customise a ActiveAdmin form for a Recipe model that has a has_many relationship with Step.

class Recipe < ActiveRecord::Base
  has_many :steps
end

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

  belongs_to :recipe
end

I have the following in my ActiveAdmin file with relation to this:

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

The following error is thrown when I try to load the form:

undefined method `new_record?' for nil:NilClass

I've isolated it so far to the has_many method but I'm lost past this. Any advice and help would be appreciated!

like image 511
nickpellant Avatar asked Aug 26 '11 14:08

nickpellant


2 Answers

go to your Recipe model and add the following line

accepts_nested_attributes_for :steps

The line is required by formtastic, not active admin. Check https://github.com/justinfrench/formtastic for formtastic documentation

like image 199
Dan Gurgui Avatar answered Nov 18 '22 03:11

Dan Gurgui


class Recipe < ActiveRecord::Base

    attr_accessible :step_attributes

    has_many :steps

    accepts_nested_attributes_for :steps

end
like image 35
user5439847 Avatar answered Nov 18 '22 02:11

user5439847