凤凰城/ Elixir中更优雅,更短的方式是什么?
<title><%= @page_title %></title>
当然,我可以在每个控制器的每个动作中定义@page_title
,但如果我还没有在动作中定义它,我希望它有一个默认值。将它传递给模板。
我该怎么做?这不起作用:
<title><%= @page_title || "my title" %></title>
答案 0 :(得分:3)
如果使用括号语法通过assigns
地图访问变量,如果未设置变量,则不会出现错误;相反,您将获得nil
,您可以使用||
链接以提供默认值:
<title><%= assigns[:page_title] || "my title" %></title>