檢視原始碼 mix phx.routes (Phoenix v1.7.14)
列印所有預設或特定路由器的路由。也可以找到指定的 URL 背後控制器的函式。
$ mix phx.routes [ROUTER] [--info URL]
除非在應用程式設定中設定了名為 :namespace
的設定,否則預設路由器會從應用程式名稱轉換而來。例如,當此任務在沒有引數的情況下呼叫時,設定
config :my_app,
namespace: My.App
會展示 My.App.Router
的路由。
Umbrella 專案沒有預設路由器,因此總是預期會給定一個路由器。可以將別名新增到 mix.exs 中,以自動化這個動作
defp aliases do
[
"phx.routes": "phx.routes MyAppWeb.Router",
# aliases...
]
選項
--info
- 找到由給定 URL 呼叫的控制器函式定義--method
- 與給定 URL 搭配使用的 HTTP 方法,只會在搭配--info
使用時運作,且預設為get
範例
列印所有預設路由器的路由
$ mix phx.routes
列印所有給定路由器的路由
$ mix phx.routes MyApp.AnotherRouter
列印由指定的 URL 呼叫的控制器函式的資訊
$ mix phx.routes --info http://0.0.0.0:4000/home
Module: RouteInfoTestWeb.PageController
Function: :index
/home/my_app/controllers/page_controller.ex:4
列印由指定的 URL 和 HTTP 方法呼叫的控制器函式的資訊
$ mix phx.routes --info http://0.0.0.0:4000/users --method post
Module: RouteInfoTestWeb.UserController
Function: :create
/home/my_app/controllers/user_controller.ex:24