Phoenix模板中的变量或/具有默认值

时间:2017-02-13 02:56:32

标签: elixir phoenix-framework

凤凰城/ Elixir中更优雅,更短的方式是什么?

<title><%= @page_title %></title>

当然,我可以在每个控制器的每个动作中定义@page_title,但如果我还没有在动作中定义它,我希望它有一个默认值。将它传递给模板。

我该怎么做?这不起作用:

<title><%= @page_title || "my title" %></title>

1 个答案:

答案 0 :(得分:3)

如果使用括号语法通过assigns地图访问变量,如果未设置变量,则不会出现错误;相反,您将获得nil,您可以使用||链接以提供默认值:

<title><%= assigns[:page_title] || "my title" %></title>