gpt4 book ai didi

ruby-on-rails - 设计管理员重定向

转载 作者:行者123 更新时间:2023-12-01 01:18:08 24 4
gpt4 key购买 nike

我使用 Devise + CanCan 并希望重定向到我的管理界面(由 rails admin gem 生成)如果它是 管理员 登录..

我定制了用户 使用以下命令重定向到他们各自的配置文件:

class ApplicationController < ActionController::Base
protect_from_forgery
rescue_from CanCan::AccessDenied do |exception|
redirect_to root_path, :alert => exception.message
end
def after_sign_in_path_for(resource)
user_path(current_user)
end

end

角色.rb
class Role < ActiveRecord::Base
has_and_belongs_to_many :users, :join_table => :users_roles
belongs_to :resource, :polymorphic => true
end

能力.rb
class Ability
include CanCan::Ability

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

用户名
class User < ActiveRecord::Base
rolify
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
.....

最佳答案

我假设你有一个 bool 值 admin您的 User 模型上的属性。

def after_sign_in_path_for(resource)
if current_user.has_role? :admin
rails_admin.dashboard_path
else
user_path(current_user)
end
end

关于ruby-on-rails - 设计管理员重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10828085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com