0

CanCan を使い始めたばかりで、コードのサンプルは次のとおりです。

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

  can :read, Link
end

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

これは CanCan の github リポジトリからのものですが、これは機能していないようです (false を返し、...コードの実行を停止します)。

ビューを に変更すると<% if can? :read, Link %>、機能します。ただし、これは CanCan の readme とは異なります。ここでどこが間違っているか知っていますか?

4

2 に答える 2

1

それを確認します

  1. 表示された行の下にあるモデルをリンクする権限を付与または削除する権限はありません
  2. @link は nil ではなく、リンクです
于 2011-01-07T20:17:49.377 に答える
0
can? :read, Link

はリンクの概念です...「すべてのリンクを読むことができますか?」に似たものです。

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

これは、問題の特定のリンク オブジェクトを読み取れることを確認するためにチェックします。

于 2011-01-07T22:17:52.313 に答える