Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Activeadmin doesn't log out when I click "logout"

I am following the instructions from the railscast about installing activeadmin. Upon installation, I got two errors -

1) invalid number of args for sign_in - so I renamed my sign_in method to sign_in_user and that fixed this issue.

then

2) invalid number of args for signed_in? - so I renamed my signed_in? method to is_signed_in? and that fixed this issue.

Now everything seems to work except when I click the log out button in activeadmin, it says "signed out successfully" but the logout button is still in the top corner and it didn't log me out.

I added these two things to my active_admin.rb file per suggestions from people with similar problems:

config.logout_link_path = :destroy_admin_user_session_path

and

config.logout_link_method = :delete

but still no luck. Here is my rake routes:

     admin_dashboard        /admin(.:format)                               {:action=>"index", :controller=>"admin/dashboard"}
            admin_comments GET    /admin/comments(.:format)                      {:action=>"index", :controller=>"admin/comments"}
            admin_comments POST   /admin/comments(.:format)                      {:action=>"create", :controller=>"admin/comments"}
         new_admin_comment GET    /admin/comments/new(.:format)                  {:action=>"new", :controller=>"admin/comments"}
        edit_admin_comment GET    /admin/comments/:id/edit(.:format)             {:action=>"edit", :controller=>"admin/comments"}
             admin_comment GET    /admin/comments/:id(.:format)                  {:action=>"show", :controller=>"admin/comments"}
             admin_comment PUT    /admin/comments/:id(.:format)                  {:action=>"update", :controller=>"admin/comments"}
             admin_comment DELETE /admin/comments/:id(.:format)                  {:action=>"destroy", :controller=>"admin/comments"}
    new_admin_user_session GET    /admin/login(.:format)                         {:action=>"new", :controller=>"active_admin/devise/sessions"}
        admin_user_session POST   /admin/login(.:format)                         {:action=>"create", :controller=>"active_admin/devise/sessions"}
destroy_admin_user_session DELETE /admin/logout(.:format)                        {:action=>"destroy", :controller=>"active_admin/devise/sessions"}
       admin_user_password POST   /admin/password(.:format)                      {:action=>"create", :controller=>"active_admin/devise/passwords"}
   new_admin_user_password GET    /admin/password/new(.:format)                  {:action=>"new", :controller=>"active_admin/devise/passwords"}
  edit_admin_user_password GET    /admin/password/edit(.:format)                 {:action=>"edit", :controller=>"active_admin/devise/passwords"}
       admin_user_password PUT    /admin/password(.:format)                      {:action=>"update", :controller=>"active_admin/devise/passwords"}
                     users GET    /users(.:format)                               {:action=>"index", :controller=>"users"}
                     users POST   /users(.:format)                               {:action=>"create", :controller=>"users"}
                  new_user GET    /users/new(.:format)                           {:action=>"new", :controller=>"users"}
                 edit_user GET    /users/:id/edit(.:format)                      {:action=>"edit", :controller=>"users"}
                      user GET    /users/:id(.:format)                           {:action=>"show", :controller=>"users"}
                      user PUT    /users/:id(.:format)                           {:action=>"update", :controller=>"users"}
                      user DELETE /users/:id(.:format)                           {:action=>"destroy", :controller=>"users"}
              attend_event POST   /events/:id/attend(.:format)                   {:action=>"attend", :controller=>"events"}
     remove_attendee_event POST   /events/:id/remove_attendee/:user_id(.:format) {:controller=>"events", :action=>"remove_attendee"}
                edit_event POST   /events/:id/edit(.:format)                     {:controller=>"events", :action=>"edit"}
                    events GET    /events(.:format)                              {:action=>"index", :controller=>"events"}
                    events POST   /events(.:format)                              {:action=>"create", :controller=>"events"}
                 new_event GET    /events/new(.:format)                          {:action=>"new", :controller=>"events"}
                edit_event GET    /events/:id/edit(.:format)                     {:action=>"edit", :controller=>"events"}
                     event GET    /events/:id(.:format)                          {:action=>"show", :controller=>"events"}
                     event PUT    /events/:id(.:format)                          {:action=>"update", :controller=>"events"}
                     event DELETE /events/:id(.:format)                          {:action=>"destroy", :controller=>"events"}
                  sessions POST   /sessions(.:format)                            {:action=>"create", :controller=>"sessions"}
               new_session GET    /sessions/new(.:format)                        {:action=>"new", :controller=>"sessions"}
                   session DELETE /sessions/:id(.:format)                        {:action=>"destroy", :controller=>"sessions"}
                    signup        /signup(.:format)                              {:controller=>"users", :action=>"new"}
              create_event        /create_event(.:format)                        {:controller=>"events", :action=>"new"}
                 my_events        /my_events(.:format)                           {:controller=>"events", :action=>"my_events"}
                    signin        /signin(.:format)                              {:controller=>"sessions", :action=>"new"}
                   signout        /signout(.:format)                             {:controller=>"sessions", :action=>"destroy"}
                   contact        /contact(.:format)                             {:controller=>"pages", :action=>"contact"}
                     about        /about(.:format)                               {:controller=>"pages", :action=>"about"}
                      help        /help(.:format)                                {:controller=>"pages", :action=>"help"}
                      root        /(.:format)                                    {:controller=>"pages", :action=>"home"}

what am I missing? thanks!

like image 784
Matthew Berman Avatar asked Oct 12 '11 03:10

Matthew Berman


1 Answers

For Devise users:

In /config/initializers/active_admin.rb

ActiveAdmin.setup do |config|
  config.logout_link_path = :destroy_user_session_path
  config.logout_link_method = :delete

RESTART SERVER before testing the change.

like image 125
Abram Avatar answered Oct 03 '22 10:10

Abram