【发布时间】:2014-04-02 07:33:46
【问题描述】:
我有更多型号有地址,有些只有address,有些同时有shipping_address 和billing_address。地址的方案是相同的。在 factory_girl 中我需要复制粘贴地址属性定义,但如果可以在这里使用某种宏就更好了。
我想要这样的东西:
factory :organization do
name { Faker::Name.name }
# this could define street, city, zip, ... with prefix shipping_address
has_address :shipping_address
emnd
怎么做?
【问题讨论】:
-
地址可以转到不同的列名吗?或者它总是
shipping_address? -
是的,它可以转到具有不同前缀的列,因此有一个包含街道、城市、邮政编码等字段的地址...但它的前缀是 billing_address、shipping_address 等。
-
哦,列有前缀。那我的回答不行!如果地址具有相同的架构,也许您可以将它们提取到自己的模型(和 db 表)中并使用关联?
-
我可以利用你的回答,我很感激。我之前有它的关联,但这增加了额外的复杂性,我不想支付。我尽量避免嵌套,只有在有理由的时候才使用它。