我有一个这样的工厂:
FactoryGirl.define do
factory :member_data,
:class => Member do
first_name 'fn_member'
last_name 'ln_member'
end
end
当我运行时db:migrate
,FactoryGirl 在创建Member
表之前被调用。而且我遇到了一些错误,例如“找不到属性”。我在网上搜索时发现有些东西必须是惰性初始化的,例如:
Factory.define :order do |f|
...
f.code_id Code.first
end
一定是:
Factory.define :order do |f|
...
f.code_id { Code.first }
end
事实上,如果我删除:class => Member
迁移成功。但是我怎么能懒惰地定义工厂:class
???
谢谢