2016-05-14 4 views
-3

Ниже приведена моя способность класса. Это означает, что если вы администратор, вы можете делать все, иначе вы просто можете прочитать. Но я не знаю, как классифицировать клиентов после их подписания? Если у вас есть какие-либо предложения, помогите мне!Как использовать CanCan для классификации клиентов после их входа?

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 
+1

Прочтите https://stackoverflow.com/help/how-to-ask, чтобы узнать, как написать конкретный вопрос, на который можно ответить. –

ответ

1

вы можете написать метод в ApplicationController как:

def require_admin 
current_user.admin? 
end 

затем в нужный контроллер, вы можете использовать

before_action :require_admin, except: :show 

Я предполагаю, что я дал вам идею, и вы должны импровизировать Это.

+0

, так как я могу определить пользователя для администратора? –

+0

добавьте булевский столбец в пользовательскую таблицу admin. –

+0

Большое вам спасибо, позвольте мне попробовать :) –