Tengo un método que hace algo como esto:
before_filter :authenticate_rights, :only => [:show]
def authenticate_rights
project = Project.find(params[:id])
redirect_to signin_path unless project.hidden
end
También quiero usar este método en algunos otros controladores, así que copié el método en un ayudante que se incluye en application_controller.
el problema es que, en algunos controladores, la identificación del proyecto no es el :id
símbolo sino fe :project_id
(y también :id
está presente (para otro modelo)
Como resolverías este problema? ¿Existe una opción para agregar un parámetro a la acción before_filter (para pasar el parámetro correcto)?
,:only => [:show]
símbolo? Recibo un error al intentarlobefore_filter { |c| c.authenticate_rights correct_id_here }, :only => [:show]