Ruby on rails ActiveAdmin登录页
我正在与activeadmin一起使用我的第一个rails应用程序,并正在将Desive合并为身份验证机制。当前,当用户未通过身份验证时,它将重定向到默认的Desive登录页面 我想默认为一个活动的管理员登录页面,这样的外观和感觉是一样的。问题是我没有看到活动的管理员登录页面。是否存在这样一个页面 看看这个rails cast:它们在Ruby on rails ActiveAdmin登录页,ruby-on-rails,ruby,ruby-on-rails-4,devise,activeadmin,Ruby On Rails,Ruby,Ruby On Rails 4,Devise,Activeadmin,我正在与activeadmin一起使用我的第一个rails应用程序,并正在将Desive合并为身份验证机制。当前,当用户未通过身份验证时,它将重定向到默认的Desive登录页面 我想默认为一个活动的管理员登录页面,这样的外观和感觉是一样的。问题是我没有看到活动的管理员登录页面。是否存在这样一个页面 看看这个rails cast:它们在localhost:3000/admin/login上显示了一个登录页面,但这给了我一个404 有人知道是否有activeadmin登录页面以及我如何使用它吗 $r
localhost:3000/admin/login
上显示了一个登录页面,但这给了我一个404
有人知道是否有activeadmin登录页面以及我如何使用它吗
$rake路线
Prefix Verb URI Pattern Controller#Action
root GET / admin/dashboard#index
new_user_session GET /users/sign_in(.:format) devise/sessions#new
user_session POST /users/sign_in(.:format) devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
user_password POST /users/password(.:format) devise/passwords#create
new_user_password GET /users/password/new(.:format) devise/passwords#new
edit_user_password GET /users/password/edit(.:format) devise/passwords#edit
PATCH /users/password(.:format) devise/passwords#update
PUT /users/password(.:format) devise/passwords#update
admin_root GET /admin(.:format) admin/dashboard#index
admin_dashboard GET /admin/dashboard(.:format) admin/dashboard#index
batch_action_admin_estimates POST /admin/estimates/batch_action(.:format) admin/estimates#batch_action
admin_estimates GET /admin/estimates(.:format) admin/estimates#index
POST /admin/estimates(.:format) admin/estimates#create
new_admin_estimate GET /admin/estimates/new(.:format) admin/estimates#new
edit_admin_estimate GET /admin/estimates/:id/edit(.:format) admin/estimates#edit
admin_estimate GET /admin/estimates/:id(.:format) admin/estimates#show
PATCH /admin/estimates/:id(.:format) admin/estimates#update
PUT /admin/estimates/:id(.:format) admin/estimates#update
DELETE /admin/estimates/:id(.:format) admin/estimates#destroy
batch_action_admin_users POST /admin/users/batch_action(.:format) admin/users#batch_action
admin_users GET /admin/users(.:format) admin/users#index
POST /admin/users(.:format) admin/users#create
new_admin_user GET /admin/users/new(.:format) admin/users#new
edit_admin_user GET /admin/users/:id/edit(.:format) admin/users#edit
admin_user GET /admin/users/:id(.:format) admin/users#show
PATCH /admin/users/:id(.:format) admin/users#update
PUT /admin/users/:id(.:format) admin/users#update
DELETE /admin/users/:id(.:format) admin/users#destroy
routes.rb
Myapp::Application.routes.draw do
root :to => "admin/dashboard#index"
devise_for :users
ActiveAdmin.routes(self)
end
我使用的是activeadmin的1.0.0.pre版本
文件行:
gem 'activeadmin', github: 'gregbell/active_admin' # Need to point at this github repo for rails 4 compat. See answer from paulcarvill here: https://github.com/gregbell/active_admin/issues/1963
要在Active Admin中使用设计身份验证功能,必须使用Active Admin生成用户模型: 如果您自己在应用程序中实现Desive的功能,则必须在Active Admin中修改身份验证设置:
我需要从以下位置修改路由文件:
devise_for :users
为此:
devise_for :users, ActiveAdmin::Devise.config
更新 注意:顺序很重要
否则,当您点击
admin/login
时,您的active admin
登录名将不会显示,但会显示正常登录名(如果您有两款型号的setup Desive)。我已经完成了这两项工作。我有设计工作,但我不想使用设计登录页面。我想在activeadmin登录页面上使用Desive登录机制(如果有。我知道以前有,因为我发布的railscast链接显示了它)。我的routes文件是这样的。奇怪的是,你必须手动这样做,因为在我的情况下,这是由活动管理员自动完成的。
# this works
devise_for :admin_users, ActiveAdmin::Devise.config
ActiveAdmin.routes(self)
# this won't work
ActiveAdmin.routes(self)
devise_for :admin_users, ActiveAdmin::Devise.config