Active Record接受嵌套属性

时间:2011-09-29 14:41:56

标签: ruby-on-rails activerecord nested-attributes

我无法解决这个问题。我想在表单中使用嵌套属性,但在我这样做之前,我需要能够从事件中构建一个人(管理员),如下所示:

@event = Event.new
@event.administrator.build
#=> undefined method 'build' for nil:NilClass

class Event < ActiveRecord::Base
  #start_date, end_date, title
  has_one :administrator, :class_name => "Person" 
  has_one :account_manager, :class_name => "Person"
  accepts_nested_attributes_for :administrator
end

class Person < ActiveRecord::Base
  #fname, lname, bday
  belongs_to :event
end

任何帮助?

1 个答案:

答案 0 :(得分:2)

我认为你需要使用build_administrator ......

@event = Event.new
@event.build_administrator

这是因为您有'has_one'关联,因此默认情况下没有创建关联代理。