【发布时间】:2018-08-20 22:10:07
【问题描述】:
我有以下工厂,里面有 _skip_create_,并且在创建时还调用另一个工厂,我试图指定一个特定的 UUID。示例:
FactoryBot.define do
factory :experiment do
transient { order nil }
env_array = %w[prod dev test]
uuid { SecureRandom.uuid }
name { 'some name' }
skip_create
initialize_with do
env_array.each_with_index do |env, idx|
FactoryBot.create(:environment, uuid: 'b5c096d5-479a-4693-ac14-9cea7dfd045c') if order.eql? 'first'
end
end
end
end
问题是,我无法让 order 成为可操作的。我明白了:
ArgumentError: Trait not registered: order
当我打电话给工厂时,如何让 order 可以指定?
【问题讨论】:
标签: ruby-on-rails rspec factory-bot transient