首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >inherited_resources和cancan冲突

inherited_resources和cancan冲突
EN

Stack Overflow用户
提问于 2010-10-25 03:39:39
回答 1查看 906关注 0票数 0

这与inherited_resources和Ryan Bates的cancan宝石有冲突。

我有一些简单的控制器

代码语言:javascript
复制
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

和路由

代码语言:javascript
复制
  resources :issues do
    collection do
      get "tag/:tag" => "issues#tag", :as => "tags"
    end
  end

一切看起来都很正常,但在尝试请求http://localhost:8080/issues/tag/tag1时,我发现

代码语言:javascript
复制
 ActiveRecord::RecordNotFound in IssuesController#tag

Couldn't find Issue without an ID

从控制器中删除load_and_authorize_resource后-一切正常,但我需要访问控制。

你知道怎么解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-25 03:52:13

使用load_and_authorize_resource :except => :tag。请注意,这不会应用规则。如果您需要应用一些,请改用authorize!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4010054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档