У меня проблема с настройкой моего Devise (4.5.0
) в Rails (5.2.1
). Логин не работает через API.
В моем routes.rb
я определяю маршруты для Devise в пространстве имен следующим образом:
Rails.application.routes.draw do
namespace :api do
devise_for :users
end
[...]
end
Это генерирует правильные маршруты, но вход в систему не работает, потому что Devise считает, что resource_name
или область действия api_user
вместо user
. Если я переопределю метод auth_options
, я смогу решить эту проблему, но действительно ли это правильный путь?
Обновление
Я исследовал это дальше. Это можно обойти, добавив singular: :user
к объявлению devise_for
. Для меня это не интуитивно понятно, почему я создал проблему: https://github.com/plataformatec/devise/issues/4969