Rails 3.2 has_one build:undefined方法serialized_attributes for nil:NilClass

时间:2014-02-19 01:16:03

标签: ruby-on-rails ruby-on-rails-3.2 associations

我正在使用Rails 3.2。我正在尝试为has_one关系构建一个对象(每个驱动程序都有一个cdl_driving_license)。我以前做了很多次类似的任务,但它的工作非常好。这个特例我不断收到这个错误:

undefined method `serialized_attributes' for nil:NilClass

以下是我的相关代码:

driver.rb

has_one :cdl_driving_license, dependent: :destroy
accepts_nested_attributes_for :cdl_driving_license, :allow_destroy => true

cdl_driving_license.rb

belongs_to  :driver 

drivers_controller.rb

def new
 @driver = Driver.new
 @driver.build_cdl_driving_license
 #more code...
end

知道是什么导致了这个错误吗?

2 个答案:

答案 0 :(得分:0)

在您的新方法中,您要尝试: @ driver.cdl_driving_license.build(这里的cdl驾驶执照参数)?

答案 1 :(得分:0)

想出来。我试图构建的记录属于一个包含一个带有保留名称的列的表(我有一个名为“class”的列)。 DUH!