आवेदन नियंत्रक अन्य सभी वर्गों का मूल वर्ग है।
आप इस वर्ग में किसी भी फिल्टर डाल तो प्रवाह इस प्रकार काम करता है:
नियंत्रण पहले Application Controller
को जाता है:
यदि आप यूआरएल किसी भी कार्रवाई के साथ users
संसाधन का कहना कहना तो index
कार्रवाई मारा। वहां फ़िल्टर के लिए यह जांचता है, अगर कोई पाता है तो यह फ़िल्टर विधि निष्पादित करता है और उसके बाद यह उपयोगकर्ता नियंत्रक की अनुक्रमणिका कार्रवाई में जाता है।
आवेदन नियंत्रक:
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :verify_logged_in
end
अन्य नियंत्रक:
class UsersController < ApplicationController
def index
end
यहाँ उपरोक्त कोड में आप देखते हैं कि अन्य नियंत्रक माता पिता नियंत्रक की सामग्री को जो आवेदन नियंत्रक है इनहेरिट है । तो यदि आप एप्लिकेशन नियंत्रक में before_filter
डालते हैं तो प्रत्येक उपयोगकर्ता के लिए यह सत्यापित करेगा कि उपयोगकर्ता प्रत्येक अनुरोध के लिए लॉग इन है या नहीं। आधार वर्ग में
स्रोत
2013-02-07 14:21:45
के रूप में, आधार और उसके सभी व्युत्पन्न वर्ग पर काम करेंगे क्या होगा अगर यो चाहते हैं उस फ़िल्टर को छोड़कर जोड़ने के लिए? उपयोगकर्ता नियंत्रक की इंडेक्स एक्शन को छोड़कर आप सभी नियंत्रकों में सभी कार्यों के लिए फ़िल्टर कैसे चलाएंगे? @ डेविड हन – Cas
आप जोड़ देंगे: 'skip_before_filter: verify_logged_in,: को छोड़कर => [: अनुक्रमणिका] 'उपयोगकर्ता नियंत्रक को। –