Could not find devise mapping for path "/sessions/user" devise log in error
Be careful if you nave namespaced routes to declare the devise_scope a little different:
namespace :api, defaults: {format: 'json'} do
namespace :v1 do
devise_scope :api_v1_user do
...
end
end
end
in your routes.rb file, try wrapping your routes inside the scope block as the error message suggests. Here is an example:
devise_scope :user do
get "signup", to: "devise/registrations#new"
get "login", to: "devise/sessions#new"
get "logout", to: "devise/sessions#destroy"
end
This will give you nicely named routes.
And by the way, if you are using Rails 4, get rid of the match method. you need to specify the HTTP verb.
OBSOLETE old answer:
(Below is the old obsolete version of the code, shown for reference. Use the code above.)
devise_for :users, path_names: { sign_in: 'login', sign_out: 'logout', sign_up: 'signup' }
AND
match '/sessions/user', to: 'devise/sessions#create', via: :post