मेरे पास एक तरीका है जो इस तरह से कुछ करता है:
before_filter :authenticate_rights, :only => [:show]
def authenticate_rights
project = Project.find(params[:id])
redirect_to signin_path unless project.hidden
end
मैं कुछ अन्य नियंत्रकों में भी इस पद्धति का उपयोग करना चाहता हूं, इसलिए मैंने इस विधि को एक सहायक को कॉपी किया जो कि application_controller में शामिल है।
समस्या यह है कि कुछ नियंत्रकों में, परियोजना के लिए आईडी :id
प्रतीक नहीं है, लेकिन फ़े :project_id
(और यह भी :id
मौजूद है (दूसरे मॉडल के लिए)
आप इस समस्या को कैसे हल करेंगे? क्या पहले_फिल्टर एक्शन (सही पैराम को पास करने के लिए) पैरामीटर जोड़ने का विकल्प है?
,:only => [:show]
प्रतीक जोड़ने का कोई तरीका है ? मैं कोशिश कर रहा एक त्रुटि हो रही हैbefore_filter { |c| c.authenticate_rights correct_id_here }, :only => [:show]