2012-03-08 5 views
1
 
FactoryGirl.define do 
    factory :product do 
    name "test" 
    end 
end 

使用工場(:製品)使用RSpecの工場例外:未定義のメソッドがゼロで削除:NilClass

(RDB:1)P工場(:製品)

NoMethodError例外:未定義のメソッド `削除'for nil:NilClass

ありがとうございました!

+0

after_initializeコールバックを使用することで、あなたは完全なバックトレースし、Productクラスのコードのように、より多くの情報を提供することはできますか? – nicholaides

答えて

3

同じエラーメッセージが表示されました。私はあなたの製品モデルの中のコードについてはわかりませんが、私はこの正確なエラーメッセージを得て、Googleは私にここを送りました。

このエラーの原因は、親の初期化を呼び出さずにinitializeメソッドを定義したことです。 ActiveRecordのオブジェクト内のinitializeメソッドをオーバーライドするよりも良いアイデアは

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

これも私にとっての答えでした。ありがとう! – CJBrew

1

工場定義は非常に単純なので、工場の定義ではない可能性があります。コンソールから製品を手動で作成できることを確認します。

たとえば、イニシャライザに関連するエラーが発生した場合、このエラーが発生しています。

関連する問題