使用rspec工厂异常:未定义的方法删除nil:NilClass

时间:2012-03-08 04:01:55

标签: rspec factory

FactoryGirl.define do
  factory :product do
     name "test"
   end
end

使用工厂(:产品)

(rdb:1)p工厂(:产品)

NoMethodError异常:nil的未定义方法`delete':NilClass

帮帮我谢谢你!

2 个答案:

答案 0 :(得分:3)

我刚刚遇到了与您相同的错误消息。我不知道您的产品型号中的代码,但我得到了这个确切的错误消息,谷歌发送给我这里。

这个错误的来源是我定义了一个初始化方法而没有调用父的初始化。比覆盖ActiveRecord对象中的initialize方法更好的想法是使用after_initialize回调

class MyModel < ActiveRecord::Base
  after_initialize do 
    # own init stuff goes here
  end
end

答案 1 :(得分:1)

工厂定义非常简单,您的担心很可能不是工厂定义。我将验证是否可以从控制台手动创建产品。

例如,当我遇到与初始化程序相关的错误时,我看到了这个错误。