ruby-on-rails - 评估工厂的上下文以用作属性值
问题描述
我正在尝试干燥定义几个子类的用户工厂:
FactoryGirl.define do
factory :user do
transient do
kind 'user'
end
sequence(:name) { |n| "Factory Girl #{kind} ##{n}" }
factory :supervisor, class: User do
kind 'supervisor'
#...other stuff
end
factory :admin, class: User do
kind 'supervisor'
#...other stuff
end
end
end
目前我使用瞬态属性“kind”给用户一个反映他们是什么的名字,这在涉及许多用户的方便调试测试中派上用场
我想知道是否有一种方法可以使用工厂名称设置名称属性,例如:
FactoryGirl.define do
factory :user do
sequence(:name) { |n| "Factory Girl #{__FACTORY_NAME__} ##{n}" }
factory :supervisor, class: User do
#...other stuff
end
factory :admin, class: User do
#...other stuff
end
end
end
我进行了挖掘,但似乎在评估工厂以实现这一目标时没有可用的上下文。这是一个正确的假设,还是我可以用他们的一些魔法来实现这一点!?
解决方案
推荐阅读
- apache-tika - 对于大于 2-3MB 的文件大小,Apache tika 解析非常慢
- python - Django 为同一子类别生成多个 url
- python - TypeError - 'int' 对象在 Lambda 函数中不可调用
- node.js - NodeJS:如何在用户身份验证后重置公用文件夹的缓存控制
- php - 在 WooCommerce 电子邮件通知上下载之前显示订单详细信息
- javascript - 我在使用 Axios 从我的 ReactNative 应用程序发送 FormData 并使用 multer 将其获取到我的服务器时遇到问题
- python - 如何在同一个图表tkinter上叠加多个图
- python - 选择用于 H2O 交叉验证的 nfolds 是否会改变使用的数据百分比?
- arrays - 在java中的数组中查找第二个重复元素
- mysql - 关于 Kubernetes 与外部世界联网的困惑