Rails 3: Я хочу перерахувати всі шляхи, визначені в моїй програмі рейки


144

Я хочу перерахувати всі визначені функції допоміжного шляху (які створюються з маршрутів) у моїй програмі rails 3, якщо це можливо.

Дякую,


відкрийте консоль і введіть рейкові маршрути
Mohsin Raza

Відповіді:


229
rake routes

або

bundle exec rake routes

2
Крім того, якщо ви хочете перевірити, чи розпізнає маршрутизатор вашої програми певний шлях , перегляньте це .
XåpplI'-I0llwlg'I -

У конкретному контексті мені довелося скористатися, RAILS_ENV=dev /opt/rbenv/shims/bundle rake routesщоб зробити цю роботу.
peter_v

1
rake routesзастаріла; використовувати rails routesзамість цього: github.com/rails/rails/pull/33660
nekketsuuu

72

Оновлення

Пізніше я виявив, що існує офіційний спосіб переглянути всі маршрути, перейшовши на http: // localhost: 3000 / rails / info / routes . Офіційні документи: https://guides.rubyonrails.org/routing.html#listing-existing-routes


Хоча, можливо, буде пізно, але я люблю сторінку помилок, яка відображає всі маршрути. Зазвичай я намагаюся йти /routes(або якийсь хибний) шлях прямо з браузера. Сервер Rails автоматично надає мені сторінку про помилку маршрутизації, а також усі визначені маршрути та шляхи. Це було дуже корисно :)

Отже, просто перейдіть на http: // localhost: 3000 / маршрути введіть тут опис зображення


1
Затверджуючи очевидне, це працює лише в середовищі розвитку.
Денніс

6
Це вбудовано в Rails 4, але питання задається про Rails 3. Вам потрібно буде встановити дорогоцінний камінь Sextant, щоб використовувати це в 3.
elc


7

Пробуючи http://0.0.0.0:3000/routesдодаток API Rails 5 (тобто: орієнтований лише на JSON), (як і для Rails beta 3) повернеться

{"status":404,"error":"Not Found","exception":"#> 
<ActionController::RoutingError:...

Однак http://0.0.0.0:3000/rails/info/routesвийде приємна, проста HTML сторінка з маршрутами.


7
rake routes | grep <specific resource name>

відображає конкретні ресурси, якщо це досить довгий список маршрутів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.