2011-12-08 9 views
2

FactoryGirl gemを使用して、factories.rbファイル内で、デフォルトでnilに関連付けられたファクトリを作成するにはどうすればよいですか?デフォルトでnilに設定されているファクトリアソシエーションを作成しますか?

私はこれらの線に沿って何かを考えています:

Factory.define :user do |factory| 
    factory.association :post 
    factory.association :comment, :default => nil 
end 

はそれが右だろうとそれを行うのはOKでしょうか?

+2

工場出荷時の設定でこの関連付けが全く言及されていないと、デフォルトでは 'nil'にならないでしょうか? –

+0

良い点。 seeds.rbファイルのFactoryを使用すると、うまくいかないことになると心配していましたが、心配は間違っていたと思います。 – John

+0

nilへの関連付けを無効にする場合は、http://stackoverflow.com/a/20407116/474597をチェックしてください。 – lulalala

答えて

0
Factory.define :user do |factory| 
    factory.association :post 
    factory.comment_id nil 
end 
0

FactoryGirlは今:null strategyから利益を得ます。そのため、あなたはこのようなあなたの関連付けを定義することができます。これは、このファクトリを使用している場合nilに設定関連を残すだろう

factory :user do 
    association :post 
    association :comment, strategy: :null 
end 

。将来的には、特性の戦略を簡単に変更できるため、この戦略を使用する方が、関連を完全に定義しない方が良いでしょう。

関連する問題