Rails CanCanCan条件哈希访问被拒绝



我在设置一个功能时遇到了一个问题,看起来像这样:

can :read, Project, :allocate_to => user.id

问题是

ability.can?(:read, my_project)

即使返回false

Project.accessible_by(ability)

按预期只返回该用户的项目。

我在轨道3.2.19上用ruby 1.9.3-p547 尝试了cancan 1.6.10和cancan 1.9.2

这是cancancan的错误还是我的代码?我如何找出为什么ability.can?(:read,my_project)失败了吗?

也作为问题发布

我在cancan中使用散列表示法时遇到了类似这样的问题。你试过吗:

can :read, Project do |project|
  project.allocate_to == user.id
end

我不知道为什么会这样,但这有时对我有用。

最新更新