我正在开发一个供内部使用的应用程序,我正在使用rspec和factorybot进行测试。
有6个表与用户相关,我在构建工厂时遇到了问题
District
Building
Role
DistrictRole (district_id, role_id, user_id)
BuildingRole (building_id, role_id, user_id)
User
用户必须至少在一个区和一个建筑物中才有效
DistrictRole必须具有有效的district_id,role_id和user_id
BuildingRole必须具有有效的building_id,role_id和user_id
我在网上找不到任何解释如何进行关联以及是否构建或创建的内容。
答案 0 :(得分:0)
您是否查看了factory_bot
documentation关联?
用户必须至少在一个区和一个建筑物中才有效
DistrictRole必须具有有效的district_id,role_id和user_id
BuildingRole必须具有有效的building_id,role_id和user_id
这是一个鸡和蛋的问题,这是第一个?用户或区域&建筑?
通常,可以从关联的belongs_to
端验证关联存在。走向需要模型的相反方向具有X相关记录可以是代码气味,使得构建和维护(但并非不可能)。如果您有这些类型的数据结构要求,我建议您将它们交给模型之外。