0

これが私の能力です.rb

class Ability

 include CanCan::Ability

  def initialize(user)
  user ||= User.new # guest user (not logged in)
  if user.admin?
    can :manage, :all
  else
    can :read, :all
  end
  end
  end

および索引

  <% if can? :update, @post %>
      <%= link_to t('.edit', :default => t("helpers.links.edit")),
                  edit_post_path(post), :class => 'btn btn-mini' %>
      <% end %> 

しかし、私はエラーを受け取ります

「Posts#index 未定義メソッド `admin?' の NoMethodError」為に #"

管理者またはその他のロールはどこで定義すればよいですか? また、サインイン時に管理者または別の役割を選択するにはどうすればよいですか?

4

1 に答える 1

0

ユーザーモデルで管理メソッドを作成する必要があります

def admin?
  type == 'Admin'
end

これは、管理モデルがある場合です。

class Admin < User
end
于 2013-05-05T01:12:17.970 に答える