View Source Routex.Extension.Assigns (Phoenix Routes Extension Framework v0.1.0-alpha.6)

Extracts Routex.Attrs from the route and makes them available in components and controllers with the @ assigns operator (optionally under a namespace).

options

Options

  • namespace: when set creates a named collection of Routex.Attrs
  • attrs: when set defines keys of Routex.Attrs to make available

configuration

Configuration

# file /lib/example_web/routex_backend.ex
defmodule ExampleWeb.RoutexBackend do
  use Routex,
  extensions: [
+   Routex.Extension.Assigns,
],
+ assigns: %{namespace: :rtx, attrs: [:scope_helper, :locale, :contact, :name]}

pseudo-result

Pseudo result

# in (h)eex template
@rtx.scope_helper     "eu_nl"
@rtx.locale           "nl"
@rtx.contact          "verkoop@example.nl"
@rtx.name             "The Netherlands"

routex-attrs

Routex.Attrs

Requires

  • none

Sets

  • assigns

example-use-case

Example use case

Combine with Routext.Extension.Alternatives to make compile time, scope bound assigns available to components and controllers.