Простая проблема CanCan - PullRequest
       3

Простая проблема CanCan

0 голосов
/ 07 января 2011

Я только что начал с CanCan, и вот пример кода:

# Ability.rb
def initialize(user)    
  user ||= User.new      

  can :read, Link
end

# view.html.erb
<% if can? :read, @link %>
  ...
<% end %>

Это из репозитория github для CanCan, но, похоже, это не работает (возвращает false и останавливает выполнение кода ...).

Когда я меняю вид на <% if can? :read, Link %>, это работает. Но это отличается от readme CanCan. Вы знаете, где я здесь не так?

Ответы [ 2 ]

1 голос
/ 07 января 2011

Проверьте, что

  1. У вас нет прав, предоставляющих или удаляющих права для моделей Link ниже отображаемой линии
  2. @ ссылка не ноль и является ссылкой
0 голосов
/ 08 января 2011
can? :read, Link

- это концепция ссылки ... что-то вроде «Вы можете прочитать все ссылки?»

can :read, Link do |link|
  link.account.id == user.account_id
end

Эта проверка позволяет убедиться, что вы можете прочитать конкретный объект ссылки ввопрос

...