Я принял приложение Rails и пытаюсь выполнить некоторые тесты модели; Я использую FactoryGirl в первый раз, так что это может быть вопрос начинающих.factory_girl - как создать объект в определении другого объекта
Существует модель, называемая object_connection, которая связывает две части информации. Он отлично работает в разработке, но относится к food_item и drink_item, но не имеет ассоциации. Проблема в том, что каждый раз, когда я запускаю спецификацию, эти два запуска create запускаются. Я хотел бы получить простой завод, чтобы создать это, но следующий не работает:
FactoryGirl.define do
factory :test_object_connection, class: ObjectConnection do
m=FactoryGirl.create :menu_item
fi=FactoryGirl.create(:test_food_item, menu_header_id: 1, menu_id: 1)
food_id fi.id
food_location_id fi.location_id
drink_id m.id
end
end
Я пытался делать раньше (: создать), но это, похоже, не работает. Я знаю, что в идеале должна быть ассоциация, но я предпочел бы просто правильно проверить этот тест, а затем предложить эти изменения. Каким будет правильный способ создания локальных переменных при создании фабрики?
ТНХ
Я полагаю, '' food', food_location' и '' drink' являются belongs_to' ассоциации в ObjectConnection , Я прав? – kiddorails
Желаю :-) Нат в этот момент. Они управляются вручную и ищут модели через ассоциации. Одна из проблем заключается в том, что еда и напитки производятся из одного стола. Думаю, лучший способ сделать это, поскольку в настоящее время это либо/или для двух предметов, но может быть больше в будущем. – timpone