मैं रेल v2.3मॉडल
उपयोग कर रहा हूँ अगर मैं एक मॉडल है:
class car < ActiveRecord::Base
validate :method_1, :method_2, :method_3
...
# custom validation methods
def method_1
...
end
def method_2
...
end
def method_3
...
end
end
ऊपर दिखने वाला रूप में, मैं 3 कस्टम मान्यता तरीकों है , और मैं उन्हें मॉडल सत्यापन के लिए उपयोग करता हूं।
अगर मैं इस मॉडल कक्षा में एक और तरीका है जो निम्नलिखित की तरह मॉडल का एक नया उदाहरण गोल बचाने में कामयाब:
# "flag" here is NOT a DB based attribute
def save_special_car flag
new_car=Car.new(...)
new_car.save #how to skip validation method_2 if flag==true
end
मैं, नई कार को बचाने के लिए इस विशेष विधि में method_2
का सत्यापन छोड़ चाहते हैं कुछ सत्यापन विधि को कैसे छोड़ें?
क्या आपकी 'विशेष कार' में कोई विशेषता है जो इसे गैर-विशेष कारों से अलग कर सकती है? यह आसान बना देगा। – Dogbert
क्या आप [सशर्त सत्यापन] (http://guides.rubyonrails.org/active_record_validations_callbacks.html#conditional- validation) दस्तावेज़ों पर गए हैं? –
हाय, मैंने एक विशेष कार को बचाने के लिए विधि के लिए अपनी पोस्ट अपडेट की। असल में, मेरे पास विधि में "ध्वज" पैरामीटर पास है, और यदि "ध्वज" सत्य है, तो मैं विधि_2 –