ush*_*sha 1 rspec ruby-on-rails factory-bot
我不知道这是FactoryGirl的错误,还是我做错了
我有两个工厂定义
factory :employee do
name "name1"
association :department
end
factory :department do
name "department1"
end
Run Code Online (Sandbox Code Playgroud)
我希望以下内容可以构建员工和部门
FactoryGirl.build(:employee, :name => "employee")
Run Code Online (Sandbox Code Playgroud)
但它构建了员工对象并在数据库中创建了部门.我相信它可以用于一些旧版本的FactoryGirl.
我正在使用factory_girl版本4.2.0.
如何使其构建关联对象而不是创建一个?
是的,这是FactoryGirl的默认行为.但是,文档显示您可以为关联指定构建策略,例如:
factory :employee do
name "name1"
association :department, strategy: :build
end
Run Code Online (Sandbox Code Playgroud)
请参阅https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md#associations
您可以使用 build_stubbed
FactoryGirl.build_stubbed :employee
Run Code Online (Sandbox Code Playgroud)
然后FactoryGirl将在内存中构建一个员工对象和一个部门对象.所有这两个都有假的id,如1000+,并且正确关联.
| 归档时间: |
|
| 查看次数: |
1451 次 |
| 最近记录: |