Новый путь Rails во вложенных маршрутах - PullRequest
0 голосов
/ 07 мая 2020

У меня есть контроллер ниже контроллера:

module Api
  module V1
    module Account
      class PasswordsController < Devise::PasswordsController
        respond_to :json

        def create
         # some code
        end

        def update
         # some code
        end

        def is_token_valid
          ::Account.find_by(reset_password_token: params[:token])
        end
      end
    end
  end
end

Я хочу настроить конечную точку для внешнего разработчика, где он будет проверять, существует ли reset_password_token в БД (разработайте здесь). Я не знаю, как создать такой путь: /api/v1/account/password/is_token_valid

Мои маршруты:

namespace :api, defaults: { format: :json } do
    namespace :v1 do
      namespace :account do
        devise_for :accounts, singular: 'account', path: '', controllers: {
          sessions:      'api/v1/account/sessions',
          registrations: 'api/v1/account/registrations',
          confirmations: 'api/v1/account/confirmations',
          passwords:     'api/v1/account/passwords',
        }
      end

      resource :account, only: [:show]

РЕДАКТИРОВАТЬ

маршруты:

  root@b2faabb49f91:/usr/src/app# rake routes | grep account
                         new_account_session GET    /api/v1/account/sign_in(.:format)                                                        api/v1/account/sessions#new {:format=>:json}
                             account_session POST   /api/v1/account/sign_in(.:format)                                                        api/v1/account/sessions#create {:format=>:json}
                     destroy_account_session DELETE /api/v1/account/sign_out(.:format)                                                       api/v1/account/sessions#destroy {:format=>:json}
                        new_account_password GET    /api/v1/account/password/new(.:format)                                                   api/v1/account/passwords#new {:format=>:json}
                       edit_account_password GET    /api/v1/account/password/edit(.:format)                                                  api/v1/account/passwords#edit {:format=>:json}
                            account_password PATCH  /api/v1/account/password(.:format)                                                       api/v1/account/passwords#update {:format=>:json}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...