【问题标题】:cancan is not calling the ability methodcancan 没有调用能力方法
【发布时间】:2011-08-17 17:45:37
【问题描述】:

我想限制用户读取潜在客户的访问权限。 我的关系为: 帐户有许多办公室,帐户也有用户。 Office 有线索。 现在只有与办公室关联的用户才能查看其潜在客户。

我将能力定义为:

 can :read, Lead do |lead, office|
      @office && user.account_ids.include?(@office.account_id)
 end

我在视图中有这个:

- if can? :read, Lead, @office

但我可以看到上面提到的视图没有调用上述能力检查。我是不是在这里搞砸了?

【问题讨论】:

  • 从未使用过cancan,但下面的答案应该可以。嘿,很高兴看到一位尼泊尔同胞在 RoR 工作。我也是一个RoR爱好者。很高兴在这里见到你。 :)
  • 我将你添加到我的 gtalk 列表中

标签: ruby-on-rails ruby-on-rails-3 rubygems ruby-on-rails-3.1 cancan


【解决方案1】:

代码应该是这样的:

can :read, Office do |office|
  office && user.account_ids.include?(office.account_id)
end

查看:

- if can? :read, @office

【讨论】:

  • 实际上我想限制读取潜在客户的访问权限。您的建议根本不包括潜在客户。我将详细说明问题本身。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多