আমার একটি পদ্ধতি রয়েছে যা এই জাতীয় কিছু করে:
before_filter :authenticate_rights, :only => [:show]
def authenticate_rights
project = Project.find(params[:id])
redirect_to signin_path unless project.hidden
end
আমি এই পদ্ধতিটি অন্য কয়েকটি কন্ট্রোলারগুলিতেও ব্যবহার করতে চাই, তাই আমি এই পদ্ধতিটি অনুলিপি করেআপনি_কন্ট্রোলারের অন্তর্ভুক্ত কোনও সহায়কের কাছে অনুলিপি করেছিলাম।
সমস্যাটি হ'ল, কিছু নিয়ন্ত্রকের ক্ষেত্রে, প্রকল্পের আইডি :id
প্রতীক নয় তবে ফে :project_id
(এবং এছাড়াও :id
উপস্থিত রয়েছে (অন্য মডেলের জন্য)
আপনি কীভাবে এই সমস্যার সমাধান করবেন? পূর্ব_ ফিল্টার ক্রিয়ায় (ডান প্যারামটি পাস করার জন্য) একটি প্যারামিটার যুক্ত করার বিকল্প আছে কি?
,:only => [:show]
প্রতীক যুক্ত করার উপায় আছে কি? আমি চেষ্টা করার সময় একটি ত্রুটি পেয়ে করছিbefore_filter { |c| c.authenticate_rights correct_id_here }, :only => [:show]