Contact
This page is rendered fresh by Phoenix on every request
Not prerendered. Every request goes through the full Phoenix pipeline: router, controller, template.
Why Dynamic?
Some pages should NOT be prerendered. Contact forms, user dashboards, search results, and pages with personalized content need to be rendered fresh on every request.
This page is a standard Phoenix controller action. It goes through the full pipeline every time: router matching, controller dispatch, template rendering.
prerender do
block
and don't add metadata: %{prerender: true}.
Send a Message
This form is disabled because this is a demo. In a real app, this page would process submissions dynamically.
Router Code
# This route is outside the prerender block
scope "/", DemoWeb do
pipe_through :browser
get "/contact", PageController, :contact
end
Server time: 06:52:50 UTC
Refresh the page — the time updates because this page is rendered fresh every time.