Hereded_Resources y Cancan conflictos
-
25-09-2019 - |
Pregunta
Hay conflictos con Herited_Resources y Ryan Bates's Cancan Gem.
Tengo un controlador simple
class IssuesController < InheritedResources::Base
respond_to :html
load_and_authorize_resource
def tag
@issues = Issue.tagged_with(params[:tag]).recent.paginate(:page => params[:page])
end
protected
def collection
@issues = end_of_association_chain.recent.paginate(:page => params[:page], :per_page => Settings.per_page_defaults.issues)
end
end
y ruta
resources :issues do
collection do
get "tag/:tag" => "issues#tag", :as => "tags"
end
end
Todo parece correcto, pero intenta solicitar http: // localhost: 8080/temas/tag/tag1veo
ActiveRecord::RecordNotFound in IssuesController#tag
Couldn't find Issue without an ID
Después de eliminar load_and_authorize_resource del controlador: todo funciona bien, pero necesito control de acceso.
¿Alguna idea de cómo resolver este problema?
Solución
usar load_and_authorize_resource :except => :tag
. Tenga en cuenta que esto no aplicará las reglas. Si necesita aplicar algún uso authorize!
en cambio.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow