प्रमाणीकरण के साथ कई संबद्ध हैं। मेरे पास एक मानक has_many
संबंध है (बुकिंग में कई ऑर्डर हैं) सत्यापन के साथ कि बुकिंग कम से कम एक आदेश के बिना सहेजा नहीं जाता है। मैं इसे अपने फैक्टरीगर्ल कारखानों के साथ दोहराने की कोशिश कर रहा हूं लेकिन सत्यापन मुझे ऐसा करने से रोक रहा है।फैक्टरीगर्ल के पास
class Booking < ActiveRecord::Base
has_many :orders
validates :orders, presence: true
end
class Order < ActiveRecord::Base
belongs_to :booking
end
फैक्टरीगर्ल के गिटहब विकी पेज के बाद प्रत्येक मॉडल के लिए मेरे फैक्टॉयगर्ल फैक्ट्री विनिर्देश यहां दिए गए हैं।
FactoryGirl.define do
factory :booking do
factory :booking_with_orders do
ignore do
orders_count 1
end
before(:create) do |booking, evaluator|
FactoryGirl.create_list(:order, evaluator.orders_count, booking: booking)
end
end
end
factory :order do
booking
end
end
जब मैं अपने कल्पना से FactoryGirl.create(:booking_with_orders)
चलाने का प्रयास, मैं मिलता है:
Failure/Error: @booking = FactoryGirl.create(:booking_with_orders)
ActiveRecord::RecordInvalid:
Validation failed: Orders can't be blank
यह मान्यता भी before(:create) [...]
जो सैद्धांतिक रूप से बुकिंग के लिए आदेश बनाने से पहले चल रहा है के लिए चेक की तरह लगता है।
This post आपके कारखानों के साथ has_many
संबंध जोड़ने की सिफारिश नहीं करता है, लेकिन अगर ऐसा करने का कोई अच्छा तरीका है तो मैं इसे हल करना चाहता हूं।
अग्रिम धन्यवाद। (जिसका अर्थ है कि Booking
जरूरतों
आपका मतलब है 'बुकिंग.ऑर्डर <<' लेकिन अन्यथा, यह मेरे लिए जवाब था। धन्यवाद! – Jalada
ओह! इसे ठीक किया गया, इसे – jassa
उत्कृष्ट इंगित करने के लिए धन्यवाद! आपका बहुत बहुत धन्यवाद! – gayavat