Phoenix is about fast, concurrent, beautiful, interactive, and reliable applications. (Start with the end in mind)
Performance: The more cores the better the performance got.
Start an interactive console
iex -S mix
connection |> endpoint |> router |> browser_pipeline |> UserController
A request enters through the endpoint (lib/rumbl/endpoint.ex) and then goes into the router (web/router.ex) The router matches the URL pattern and dispatches the connection through the browser pipeline, which then calls UserController. Let’s break that last part down a little further, assuming that the request invokes the index action:
connection |> UserController.index |> UserView.render(“index.html”)
:show, :index, :new, :create, :edit, :update, and :delete actions are all frequently used in Phoenix
- Views are modules responsible for rendering.
A view is a module containing rendering functions that convert data into a format the end user will consume, like HTML or JSON.
This code snippet is the one responsible for setting up our view modules, importing all required functionality.
use Rumbl.Web, :view
- Templates: are web pages or fragments that allow both static markup and native code to build response pages, compiled into a function.