Factory Girl says ArgumentError: wrong number of arguments (1 for 2..3)
Factory Girl says ArgumentError: wrong number of arguments (1 for 2..3)
我有一个 factories.rb
文件,其中包含
factory :link do
employer
sequence(:link) {|n| "testlink#{n}" }
name "Test Link"
channel_cost 200
end
factory :matching do
candidate
job
link # ArgumentError: wrong number of arguments (1 for 2..3)
after(:create) { |matching|
job = matching.job
job.employer = matching.employer
job.save(validate: false)
}
end
employer、candidate 和 job 都在显示的工厂上方定义。我在 'link' 收到一个错误,这对我来说意义不大。
此外,当我注释掉那一行 (link
) 时,它起作用了。
它需要什么参数,我该如何添加它们?
在:link
工厂定义中,
sequence(:link) { |n| "testlink#{n}" }
定义了一个名为:link
.
的序列
在 :matching
工厂定义中,factory_girl 似乎不是将 link
解释为与 Link
的关联,而是作为属性 link
您要用名为 :link
的序列中的下一个值填充它。 (记录here。)
重命名序列应该可以解决问题。
我有一个 factories.rb
文件,其中包含
factory :link do
employer
sequence(:link) {|n| "testlink#{n}" }
name "Test Link"
channel_cost 200
end
factory :matching do
candidate
job
link # ArgumentError: wrong number of arguments (1 for 2..3)
after(:create) { |matching|
job = matching.job
job.employer = matching.employer
job.save(validate: false)
}
end
employer、candidate 和 job 都在显示的工厂上方定义。我在 'link' 收到一个错误,这对我来说意义不大。
此外,当我注释掉那一行 (link
) 时,它起作用了。
它需要什么参数,我该如何添加它们?
在:link
工厂定义中,
sequence(:link) { |n| "testlink#{n}" }
定义了一个名为:link
.
在 :matching
工厂定义中,factory_girl 似乎不是将 link
解释为与 Link
的关联,而是作为属性 link
您要用名为 :link
的序列中的下一个值填充它。 (记录here。)
重命名序列应该可以解决问题。