Mam metodę, która robi coś takiego:
before_filter :authenticate_rights, :only => [:show]
def authenticate_rights
project = Project.find(params[:id])
redirect_to signin_path unless project.hidden
end
Chcę również użyć tej metody w niektórych innych kontrolerach, więc skopiowałem metodę do pomocnika, który jest zawarty w application_controller.
problem polega na tym, że w niektórych kontrolerach id projektu nie jest :id
symbolem, ale fe :project_id
(a także :id
występuje a (dla innego modelu)
Jak rozwiązałbyś ten problem? czy istnieje opcja dodania parametru do akcji before_filter (w celu przekazania odpowiedniego parametru)?
,:only => [:show]
symbolu?before_filter { |c| c.authenticate_rights correct_id_here }, :only => [:show]