ruby-on-rails-4 - FactoryGirl 具有相同值的不同对象
问题描述
我有一个Transaction
模型,它有 2 个属性buyer
,seller
都是 type User
。
我需要创建一个拥有相同买家和卖家的工厂。
我试过这个:
FactoryGirl.define do
factory :transaction do
[...]
factory :same_user_transaction do
user = create(:user)
buyer = user
seller = user
end
end
end
但这不起作用。
感谢您的帮助
解决方案
尝试:
FactoryGirl.define do
factory :transaction do
[...]
factory :same_user_transaction do
buyer { create(:user) }
seller { buyer }
end
end
end
如果您有用户工厂,其他方法可能是:
factory :same_user_transaction do
association :buyer, factory: :user
seller { buyer }
end
甚至更好,使用别名:
factory :user, aliases: [:buyer] do
first_name "John"
last_name "Doe"
date_of_birth { 18.years.ago }
end
factory :same_user_transaction do
buyer
seller { buyer }
end
这是参考:https ://github.com/thoughtbot/factory_bot/blob/master/GETTING_STARTED.md#aliases
推荐阅读
- java - 我只想要一个用于所有活动的自定义工具栏我尝试了许多解决方案,但没有一个有效
- python - 通过浏览器向后移动时,即使在刷新后也会出现过时的元素引用异常
- sql - 在特定条件下加入表
- firebase - 无法访问 Cloud Firestore 后端
- javascript - TwoSum - Integers and Arrays
- azure - 运行 ASR 健康状态报告 Kusto 查询时出错
- python - 在分配错误之前引用的局部变量
- c++ - 1>链接:致命错误LNK1104:无法打开文件'MSCOREE.lib'`
- .net - 将值从应用程序事件传递到表单(该应用程序的此表单启动事件)VB.net
- reactjs - 如何使用 React-redux 在类组件中调度状态?