创建一个默认为 nil 的 Factory 关联?

Joh*_*ohn 6 ruby-on-rails factories factory-bot

使用 FactoryGirl gem,在 factory.rb 文件中,如何创建一个关联默认为 nil 的工厂?

我在想这些事情:

Factory.define :user do |factory|
  factory.association :post
  factory.association :comment, :default => nil
end
Run Code Online (Sandbox Code Playgroud)

那是对的吗?这样做可以吗?

lin*_*ndy 7

FactoryGirl 现在受益于一项:null策略。因此,您可以像这样定义关联:

factory :user do
  association :post
  association :comment, strategy: :null
end
Run Code Online (Sandbox Code Playgroud)

这将nil在使用此工厂时将关联设置为。使用此策略比不完全定义关联要好,因为您可以轻松地更改特征/将来的策略。


Ted*_*ddy 0

Factory.define :user do |factory|
  factory.association :post
  factory.comment_id  nil
end
Run Code Online (Sandbox Code Playgroud)