как получить маршрут, т.е. путь моего текущего API в файле rout.rb - PullRequest
0 голосов
/ 01 февраля 2019

Я новичок в железной дороге.У меня есть несколько разъяснений, которые я перечислил ниже.

  1. Я сослался на множество ссылок и вопросы о переполнении стека, везде, где упоминалось, что он использует request и получает подробности, касающиеся путь, контроллер, действие и т. д., но если я использую запрос в моем route.rb, он выдает неопределенную локальную переменную или метод ошибка.

  2. Я использовал ограничений в моем rout.rb и оттуда он вызывает метод match? из класса, в котором динамические ограничения определены внутри lib /Ограничения каталог.Здесь соответствует? (Запрос) получает параметр с именем request, в котором содержатся сведения о текущем маршруте, откуда отправляется значение параметра ?, я сомневаюсь, потому что при использовании этого метода в rout.rn в ограничение (ClassName) Я не указываю имя метода (соответствует?) или параметр запрос

Я хотел бы знать, что происходит за сценой.

Спасибо

Ответы [ 3 ]

0 голосов
/ 01 февраля 2019

Если у вас есть URI:

localhost:3000/users/:id
localhost:3000/users
localhost:3000/users/new
....

Вы можете сделать что-то вроде

rake routes | grep user

, чтобы получить только те, которые содержат user в своем пути.

Надеюсь, это поможет ..

0 голосов
/ 02 февраля 2019

условно у вас нет доступа к текущему пути в rout.rb, по крайней мере из-за того, как вы, кажется, запрашиваете к нему доступ.Существует ряд различных методов и методов сопоставления, используемых в маршрутизаторе rails, которые обслуживают утилиту, которую, я думаю, вы ищете.

Вот ссылка на документы: https://guides.rubyonrails.org/routing.html

Можете ли вы поделитьсяпочему именно вы хотите получить доступ к текущему маршруту в файле rout.rb?

0 голосов
/ 01 февраля 2019

Вы ищете это

request.url
# => "http://localhost:3000/lists/7/items"
request.path
# => "/lists/7/items"
...