具有关联的字段名称之间的工厂女孩冲突
Factory girl conflict between field names with association
出于遗留原因,我在 Rails 中有一个包含两个字段的模型:city
和 city_id
。
city
是带有城市名称的字符串。
city_id
是对 city
对象的引用。
我应该如何用 factory_girl 申报我的工厂?
我想像这样填充 city_id 和城市:
factory :address do
street "Street X"
city #uses city factory
city "MyCity" #uses legacy city
end
但这是不可能的。如何区分这两个城市领域?
根据 the docs,您只能在遵循正常约定时使用隐式关联。因此,对于这种情况,您需要显式调用 association
方法。
在下面的示例中,将 :replace_this
替换为模型中的任何 belongs_to
关联:
factory :address do
street "Street X"
association :replace_this, factory: :city #uses city factory
city "MyCity" #uses legacy city
end
出于遗留原因,我在 Rails 中有一个包含两个字段的模型:city
和 city_id
。
city
是带有城市名称的字符串。
city_id
是对 city
对象的引用。
我应该如何用 factory_girl 申报我的工厂?
我想像这样填充 city_id 和城市:
factory :address do
street "Street X"
city #uses city factory
city "MyCity" #uses legacy city
end
但这是不可能的。如何区分这两个城市领域?
根据 the docs,您只能在遵循正常约定时使用隐式关联。因此,对于这种情况,您需要显式调用 association
方法。
在下面的示例中,将 :replace_this
替换为模型中的任何 belongs_to
关联:
factory :address do
street "Street X"
association :replace_this, factory: :city #uses city factory
city "MyCity" #uses legacy city
end