工厂女孩保留字属性的关联
问题描述:
工厂女孩文档建议使用ADD_ATTRIBUTE方法来处理属于保留字的属性,具体如下:工厂女孩保留字属性的关联
factory :dna do
add_attribute(:sequence) { 'GATTACA' }
end
但是我有一个名为特质(这是保留的)模型称为ContestantTrait的另一种模型,属于Trait。我试着用不同的方式使用add_attribute来避免关联中的保留字问题,但似乎没有任何工作。
有什么建议吗?这是到目前为止,我已经试过格式:
FactoryGirl.define do
factory :contestant_trait do
add_attribute(:trait)
add_attribute(:trait) {}
add_attribute(:trait) {trait}
end
end
答
没有必要界定,因为:trait
的:add_attribute
是一个关联。使用关键字association
如下:
FactoryGirl.define do
factory :contestant_trait do
association :trait
# ... other attributes
end
end
作为一个侧面说明,建议升级到FactoryBot
:
由于两个factory_girl和factory_girl_rails的4.9.0版本中,无论是宝石会正式弃用。在4.9.0版本中。
看到这个职位https://robots.thoughtbot.com/factory_bot更多的形成和如何升级。
+0
你能解决你的问题与上述解决方案? – s3tjan
你可以使用新名称来保留保留字,你应该没问题。 –