Bet*_*rds 4 ruby-on-rails ruby-on-rails-3.2 factory-bot
我有这个工厂定义:
factory :post, :parent => :post_without_countries, class: Post do |p|
p.country_ids {|country_ids| [country_ids.association(:country), country_ids.association(:country)]}
end
Run Code Online (Sandbox Code Playgroud)
而且我希望它输出两个独特的国家.相反,它只是插入与协会相同的国家/地区两次:
#<Post id: nil, title: "Atque id dolorum consequatur.", body: "Praesentium saepe ullam magnam. Voluptatum tempora ...", created_at: nil, updated_at: nil, user_id: 1>
[#<Country id: 1, name: "Dominican Republic", isocode: "lyb", created_at: "2012-10-20 13:52:18", updated_at: "2012-10-20 13:52:18">, #<Country id: 1, name: "Dominican Republic", isocode: "lyb", created_at: "2012-10-20 13:52:18", updated_at: "2012-10-20 13:52:18">]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
更好地使用build_list或create_list方法:
post.countries = create_list(:country, 2)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8316 次 |
| 最近记录: |