Вы должны использовать resources :users
, а не :user
.Маршруты отдыха должны быть во множественном числе *Если их больше одного, вы всегда должны использовать форму множественного числа.
namespace :api do
resources :users, only: %i[index show create destroy update]
end
Это может показаться несущественным, но из-за соглашения о конфигурации рельсов это вызовет у вас тонны печали, поскольку не будетправильно работать с полиморфными помощниками маршрута.Имя вашего контроллера также должно быть во множественном числе (Api::UsersController
).
К добавить дополнительные релаксирующие действия передать блок на resources
:
namespace :api do
resources :users, only: %i[index show create destroy update] do
get :search
post :import, on: :collection, action: :import_line
end
end
Как добавить новые маршруты в пространство имен api?
Поместив их в блок, который вы передали namespace
:
namespace :api do
resources :users, only: %i[index show create destroy update] do
get :search
post :import, on: :collection
end
resources :auths, only: [:index]
end
Однако это создаст GET /auths
не GET /auths/index
.Я бы посоветовал вам прочитать руководства по рельсам о том, как соглашения по рельсам управляют спокойной маршрутизацией .