Ресурсы не создают маршруты. Можно только вручную направить в моем приложении рельсы - PullRequest
0 голосов
/ 29 февраля 2020
Rails.application.routes.draw do
  resources :users, only: [:index]
end

Вот так у меня настроены маршруты в моем проекте. Однако он не получает маршрут, и я получаю сообщение об ошибке:

No route matches [GET] "/index"

Однако мой код ниже не дает мне никаких проблем

Rails.application.routes.draw do
  get "/index", to: "users#index"
  #resources :users, only: [:index]
end

Я не уверен, что делаю неправильно. Мой контроллер и файлы просмотра настроены правильно, это просто не позволит мне использовать ресурсы для моих маршрутов. Есть предложения?

1 Ответ

2 голосов
/ 29 февраля 2020

Этот конкретный код

Rails.application.routes.draw do
  resources :users, only: [:index]
end

создает для вас маршрут с соглашением о рельсах. По соглашению я имею в виду, что вы должны отправить запрос GET / users для работы. Если вы хотите получить пользователей с / index, вы должны использовать второй кусок кода, который вы предоставили.

В основном

Rails.application.routes.draw do
  get "/index", to: "users#index"
end

перенаправляет ваш запрос индекса на индекс пользователя и просто говорит rails to где его найти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...