Laravelのartisanコマンド「route:list」を利用すると、プロジェクト内のすべてのルート情報を簡単に確認できます。本記事では、基本的な使い方から高度なオプションまで、具体例を交えて詳しく解説します。
Description
route:list
はすべての登録済みルートを表示するための便利なコマンドです。
出力は「メソッド」「URI」「名前」「アクション」の順に表示されます。
オプションによってフィルターやソートもできますが、アクションでのフィルターはできないので、grep
コマンドなどを利用して検索する必要があります。
特に、大規模なプロジェクトや複数のルートが存在する場合に効率的です。
また、route()
で利用したいがname()
で付けた名前を忘れた、resources()
を利用たりgroup()
などを利用して階層が深くなったりして名前が分からない場合によく利用します。
Usage
php artisan route:list [--json] [--method [METHOD]] [--name [NAME]] [--domain [DOMAIN]] [--path [PATH]] [--except-path [EXCEPT-PATH]] [-r|--reverse] [--sort [SORT]] [--except-vendor] [--only-vendor]
Options
オプション | 省略形 | 必須 | 説明 |
---|---|---|---|
json | - | - | JSON形式で出力 |
method | - | - | メソッドでフィルタ |
name | - | - | 名前でフィルタ |
domain | - | - | ドメインでフィルタ |
path | - | - | 指定したパスのパターンにマッチしたもののみ表示 |
except-path | - | - | 指定したパスのパターンにマッチしたものは非表示 |
reverse | r | - | 逆順で表示 |
sort | - | - | 特定のキー(domain, method, uri, name, action, middleware)でソート |
except-vendor | - | - | vendorパッケージで定義されているroutesは非表示 |
only-vendor | - | - | vendorパッケージで定義されているroutesのみ表示 |
Example
no options
php artisan route:list
GET|HEAD / .................................................................................................................... top › IndexController@index
POST _ignition/execute-solution ......................................... ignition.executeSolution › Spatie\LaravelIgnition › ExecuteSolutionController
GET|HEAD _ignition/health-check ..................................................... ignition.healthCheck › Spatie\LaravelIgnition › HealthCheckController
POST _ignition/update-config .................................................. ignition.updateConfig › Spatie\LaravelIgnition › UpdateConfigController
:
:
json
JSON形式で出力します。整形されていないので、バッチなどで利用したりする場合に使います。
php artisan route:list --json
[{"domain":null,"method":"GET|HEAD","uri":"\/","name":"healthCheck","action":"App\\Http\\Controllers\\HealthCheckController@index","middleware":["api"]},{"domain":null,"method":"POST","uri":"_ignition\/execute-solution","name":"ignition.executeSolution","action":"Spatie\\LaravelIgnition\\Http\\Controllers\\ExecuteSolutionController","middleware":["Spatie\\LaravelIgnition\\Http\\Middleware\\RunnableSolutionsEnabled"]},{"domain":null,"method":"GET|HEAD","uri":"_ignition\/health-check","name":"ignition.healthCheck","action":"Spatie\\LaravelIgnition\\Http\\Controllers\\HealthCheckController","middleware":["Spatie\\LaravelIgnition\\Http\\Middleware\\RunnableSolutionsEnabled"]},{"domain":null,"method":"POST","uri":"_ignition\/update-config","name":"ignition.updateConfig","action":"Spatie\\LaravelIgnition\\Http\\Controllers\\UpdateConfigController",
except-vendor
vendorパッケージで定義されているroutesを除外して表示します。app/routes/api.php
やapp/routes/web.php
で定義しているもの(デフォルトで/
などが登録されている)のみ表示されます。
php artisan route:list --except-vendor
GET|HEAD / .................................................................................................................... top › IndexController@index
:
:
only-vendor
except-vendorとは逆で、vendorパッケージで定義されているroutesのみ表示します。app/routes/api.php
やapp/routes/web.php
で定義しているもの(デフォルトで/
などが登録されている)は表示されません。
php artisan route:list --only-vendor
POST _ignition/execute-solution ignition.executeSolution › Spatie\LaravelIgnition › ExecuteSolutionController
GET|HEAD _ignition/health-check ........... ignition.healthCheck › Spatie\LaravelIgnition › HealthCheckController
POST _ignition/update-config ........ ignition.updateConfig › Spatie\LaravelIgnition › UpdateConfigController
:
:
Source
10.x
framework/src/Illuminate/Foundation/Console/RouteListCommand.php at 11.x · laravel/framework
The Laravel Framework. Contribute to laravel/framework development by creating an account on GitHub.
11.x
framework/src/Illuminate/Foundation/Console/RouteListCommand.php at 11.x · laravel/framework
The Laravel Framework. Contribute to laravel/framework development by creating an account on GitHub.
コメント