나는 다음과 같은 공장 설정이 있습니다FactoryGirl은 새로운 모델을 생성하기 전에 모델에 이미 존재하는 모델을 확인할 수 있습니까?
FactoryGirl.define do
factory :country do |f|
f.name "USA"
f.country_code "USA"
f.currency_code "USD"
end
factory :region do |f|
f.name "East Coast"
f.country {Country.first}
end
factory :state do |f|
f.name 'CA'
f.region {Region.first}
f.country {Country.first}
end
end
내가이 지역 & 상태 공장에서하고 싶은 것은 항목이 이미 국가의 데이터베이스에 존재하는지 확인하는 것입니다, '예'인 경우 그 다음을 사용하는 경우에만 없음을 항목이 발견되면 새 모델을 만들어야합니다. 여기
이를 생성하는 방법을 잘 내가 생각하고있는 내용의 예이지만, :factory :state do |f|
f.name 'CA'
f.region {Region.first || Factory(:region}
f.country {Country.first || Factory(:state}
end
내가 이렇게 할 이유는 양식을 선택 웁니다 내 데이터베이스에 항목을 삽입하는 것입니다
필드 & 그래서 오이를 사용하여 테스트 할 수 있습니다.
당신이 이런 짓을 했을까 왜? 이미지를 그럴만한 이유가 없습니다. – lucapette
지역 및 국가 항목이 이미 존재하지 않는 한 내 데이터베이스 스키마 상태로 인해 저장할 수 없습니다. 테스트를 위해 최소 3 가지 상태 모델이 필요하지만 지역 및 국가에 대해 하나의 행만 삽입하고 싶습니다. – Jason