Elixir Phoenix: 自定义布局模板文件
作用域范围
基于作用域范围, 可以在如下几个层次设置布局模板文件
基于Render函数的自定义
特定于某个render函数调用的自定义布局模板文件设置
def index(conn, _params) do render conn, "index.html", layout: {App.SearchView, "search.html"} end
控制器
在控制器级别设置布局模板
defmodule App.SearchController do use App.Web, :controller plug :put_layout, "search.html" def index(conn, _params) do render conn, "index.html" end end
基于路由
在路由中设置模板
# web/router.ex pipeline :admin_layout do plug :put_layout, {App.SearchView, :search} end scope "/search", App do pipe_through [:browser, :search_layout] resources "/search", App.SearchController end
不使用布局
我们知道 put_layout
可以用于在不同的范围内设置模板使用的布局文件, Phoenix 摸的布局文件为 app.html.eex
, 如果你不需要使用布局文件, 可以吧 put_layout 设置为false, 这在需要输出自定义数据格式的时候是非常好用的.
put_layout conn, false
相关推荐
liuxudong00 2020-11-19
wwzaqw 2020-11-11
lihaoxiang 2020-11-05
CrossingX 2020-11-04
xuegangic 2020-10-17
86417413 2020-11-25
83206733 2020-11-19
86276537 2020-11-19
83266337 2020-11-19
86256434 2020-11-17
zhouboxiao 2020-11-16
rise 2020-11-22
sssdssxss 2020-11-20
windle 2020-11-10
孙雪峰 2020-10-30
85477104 2020-11-17
xfcyhades 2020-11-20
cheidou 2020-11-19