檢視原始碼 Phoenix.LiveDashboard.Router (LiveDashboard v0.8.4)

提供 LiveDashboard 的 LiveView 路由。

摘要

函式

定義 LiveDashboard 路由。

函式

連結到此巨集

live_dashboard(path, opts \\ [])

檢視原始碼 (巨集)

定義 LiveDashboard 路由。

它預期井號 () 會安裝在 path 和選項組中。然後你可以直接連結到路由

<a href={~p"/dashboard"}>Dashboard</a>

選項

  • :live_socket_path - 設定 socket 路徑。它必須符合函式庫終端點中的 socket "/live", Phoenix.LiveView.Socket

  • :csp_nonce_assign_key - 指定用於資產的 CSP nonce 值的指定鍵。支援 atom() 或型別 %{optional(:img) => atom(), optional(:script) => atom(), optional(:style) => atom()} 的對應。

  • :ecto_repos - 用來顯示資料庫資訊的儲存庫。目前僅支援 PostgreSQL、MySQL 和 SQLite 資料庫。如果你沒有指定,但你的應用程式正在執行 Ecto,我們將嘗試自動偵測可用的儲存庫。你可以將 [] 設定為此選項,以停用此行為。

  • :env_keys - 設定要顯示的環境變數。定義為字串鍵的清單。如果未設定,將不會顯示環境資訊

  • :home_app - 包含要顯示在首頁上的應用程式名稱和版本的元組。預設為 {"Dashboard", :phoenix_live_dashboard}

  • :metrics - 設定用來擷取指標的模組。它可以是 模組{模組,函式}。如果沒有提供任何資訊,指標功能將被停用。如果傳遞 false,則選單項目將不會顯示。

  • :metrics_history - 設定呼叫回以擷取度量歷史。它必須是 {模組, :函式, 引數} 的「MFA」組,例如 metrics_history: {MyStorage, :metrics_history, []} 如果未設定,度量將從空白開始,僅顯示瀏覽器頁面開啟時發生的資料。

  • :on_mount - 宣告 Phoenix.LiveView.on_mount/1 呼叫回的客製清單,以新增到資訊看板的 Phoenix.LiveView.Router.live_session/3。也可宣告單一值。

  • :request_logger - 預設啟用要求記錄器頁面。傳遞 false 將停用此頁面。

  • :request_logger_cookie_domain - 設定 request_logger cookie 將寫入的網域。它可以是字串或 :parent 原子。給定字串時,它將直接設定 cookie 網域為給定的值。給定 :parent 時,它將從目前端點主機取得父網域(如果主機是「www.acme.com」,cookie 將範圍設在「acme.com」)。未設定時,cookie 將範圍設在目前網域。

  • :allow_destructive_actions - 若為 true,可直接從 UI 執行破壞性動作。預設為 false。資訊看板中提供下列破壞性動作

    • 「終止程序」 - 程序模式上的「終止程序」按鈕

    請注意,提供給「其他頁面」的客製頁面可能支援自己的破壞性動作。

  • :additional_pages - 其他頁面的關鍵字清單

範例

defmodule MyAppWeb.Router do
  use Phoenix.Router
  import Phoenix.LiveDashboard.Router

  scope "/", MyAppWeb do
    pipe_through [:browser]
    live_dashboard "/dashboard",
      metrics: {MyAppWeb.Telemetry, :metrics},
      env_keys: ["APP_USER", "VERSION"],
      metrics_history: {MyStorage, :metrics_history, []},
      request_logger_cookie_domain: ".acme.com"
  end
end