私はswitch_user gemを既存のレール3.0.9アプリケーションに実装しようとしています。私の顧客口座のため、それhas_oneのアカウント Devise + Active Admin + Switch Userで他のユーザーのアカウントにログイン
- ユーザーです
私は既に
Users
のための盗聴認証を有効にしており、ActiveAdminもとかなりよく機能しています。私のアクティブな管理インターフェースからは、アカウントを選択して、アカウントの所有者と同じようにそれらのアカウントにログインしたいと思います。スイッチユーザーは問題なく動作していますが、問題を知っているユーザーは誰でも簡単にユーザーアカウントにログインできます。http://localhost:3000/switch_user?scope_identifier=user_1
私に必要なのは唯一ADMINUSER(すなわちActiveAdminセッションがある場合)は、ユーザーのアカウントにアクセスすることができます。
これは私の/config/initializers/switch_user.rbが
SwitchUser.setup do |config| config.controller_guard = lambda { |current_user, request| current_admin_user.nil?} config.redirect_path = lambda { |request, params| "/dashboard" } end
どのように見えるかであるしかし、私はこのエラー
NameError in SwitchUserController#set_current_user undefined local variable or method `current_admin_user' for main:Object
私は、アクティブな管理セッションにアクセスすることができ、とにかくあり得ますか?
コード/config/initializers/active_admin.rb
ActiveAdmin.setup do |config| config.site_title = "MyAppName" config.authentication_method = :authenticate_admin_user! config.current_user_method = :current_admin_user end
ためところで私のアプリケーションコントローラで、私は
authenticate_admin_user
のための任意のメソッドを作成していない、current_admin_user
、アクティブな管理はそれらなしで正常に動作します。
私は思うことがほとんどすべてを試みましたが、まだ運がありません。他に誰か? – randika