0

管理者ユーザーがレール管理者以外のユーザーにアタッチされたモデルを編集できるようにする新しいコントローラーを作成したいと思います。これが私のroutes.rbのサンプルです:

devise_for :admins

mount RailsAdmin::Engine => '/admin', :as => 'rails_admin'

devise_for :dealers 
devise_for :users

get "..." => "..."
etc

これを可能にするには、コントローラーと routes.rb の両方で何をする必要がありますか? 私はRailsにかなり慣れていません。ありがとう!時間が限られているため、rails-admin プラグインを作成することは現実的ではありません。

4

1 に答える 1

1

コントローラーで、管理者が を使用してログインしているかどうかを確認します。admin_signed_in?また、 からもアクセスできますcurrent_admin。したがって、管理者がこれらの機能を有効にするかどうかをチェックする条件を配置するだけです。

編集:

before_filter にこのようなものを含めることができます

before_filter :check_authentication

private

def check_authentication
  authenticate_user! unless admin_signed_in?
end
于 2012-06-26T02:19:41.393 に答える