Rails admin gem を実装しましたが、cancan gem を使用しても、localhost:3000/admin をパスワードで保護する方法がわかりません。
誰かがこれを行うためのステップバイステップガイドを教えてもらえますか? 管理パネルのビューやコントローラーが見つからないので、パスワードで保護する方法がわかりません。
Rails admin gem を実装しましたが、cancan gem を使用しても、localhost:3000/admin をパスワードで保護する方法がわかりません。
誰かがこれを行うためのステップバイステップガイドを教えてもらえますか? 管理パネルのビューやコントローラーが見つからないので、パスワードで保護する方法がわかりません。
このページでは、Cancan の使用方法について説明します: https://github.com/sferik/rails_admin/wiki/CanCan
# in config/initializers/rails_admin.rb
RailsAdmin.config do |config|
config.authorize_with :cancan
end
彼らのability.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 # grant access to rails_admin
can :dashboard # grant access to the dashboard
end
end
end
次に、管理者ロールをユーザーに付与する必要があります。
Railsコンソールでこれを行うことができます:
user = User.find(1) #find user with ID 1
user.add_role :admin #assign role
user.has_role? :admin #should evaluate to True