मेरे पास कई क्रियाओं वाला नियंत्रक है जो: वर्ष और: यूआरएल से गुणों के रूप में। मैंने पर एक निजी विधि check_date बनाई है, दिनांक वैध है और जांचें कि तिथि भविष्य में नहीं है।redirect_to का उपयोग करने के बाद मैं नियंत्रक निष्पादन को कैसे रोकूं? (रेल का उपयोग)
def check_date(year, month)
if month < 1 || month > 12 || year < 2000
flash[:notice] = I18n.t 'archive.invalid_date'
redirect_to :action => 'index'
elsif year > Date.today.year || (year == Date.today.year && month > Date.today.month)
flash[:notice] = I18n.t 'archive.no_future'
redirect_to :action => 'month_index',
:year => Date.today.year,
:month => Date.today.month,
:type => params[:type]
end
end
वहाँ redirect_to के बाद नियंत्रक निष्पादन समाप्त होने के एक रेल रास्ता नहीं है?
तरीके मैं redirect_to के बाद एक अपवाद फेंक करने के लिए या check_date से कोई मान और प्रत्येक कार्य है कि यह कॉल में यह जांच करने के लिए या तो कर रहे हैं के बारे में सोच सकते हैं -
def month_index
year = params[:year].to_i
month = params[:month].to_i
if !check_date(year, month)
return
...
end
की तरह कुछ लेकिन मुझे आश्चर्य है कि अगर वहाँ ऐसा करने के कुछ अच्छे रेल तरीके। मैं आधा था उम्मीद कर रहा था कि रेलवे को रीडायरेक्ट करने के लिए कहा जाएगा कि मैं स्टॉप चाहता हूं, लेकिन ऐसा प्रतीत नहीं होता है।
यह पूछताछ की समस्या को हल कर सकता है लेकिन मैं यहां vrish88 की तरह समाधान की उम्मीद कर रहा था। – iphone007