我在FactoryGirl中建立了一个非常简单的关联,但是由于某种原因它没有工作。该应用程序适用于旅游公司,因此每个游览都有一个目的地(我使用的是ActiveRecord,因此Tour
型号belongs_to
a Destination
- 此关联是所有游览所必需的)。所以,我建立了我的工厂是这样的:工厂女孩协会不工作
# spec/factories.rb
FactoryGirl.define do
factory :destination do
name "Example Destination"
city "Example City"
state "CA"
end
factory :tour do
departure_date { 1.day.from_now }
return_date { 1.day.from_now }
destination
end
end
然而,当我打电话FactoryGirl.attributes_for(:tour)
,它返回:
{:departure_date => Mon, 04 Nov 2013 17:51:26 UTC +00:00,
:return_date => Mon, 04 Nov 2013 17:51:26 UTC +00:00}
没有destination_id
!为什么?
destination
工厂工作得很好。
我试图定义关联的旧方式association :destination, factory: :destination
,但这并没有帮助。如果我手动将destination_id
定义为destination_id FactoryGirl.create(:destination).id
,那么我可以使它工作,但我不应该那样做。任何想法为什么它不工作?
为什么不'目的地nil',如果你不希望任何分配原来。 – tolgap
我确实要分配目标 - 所有'tours'都需要'destination_id' –