我正在使用Sinatra,我想在我的一个视图中包含另一个erb文件,但是使用变量作为文件名。
我认为这样的事情可能会有效,但我得到一个错误,说没有找到这样的文件。
<%= erb :'layout/nav/#{device_type}' %>
目前我正在使用下面的switch语句来实现所需的结果,但上面的代码更清晰,代码更少。
<% case device_type
when 'mobile'%>
<%= erb :'layout/nav/mobile' %>
<% when 'tablet' %>
<%= erb :'layout/nav/tablet' %>
<% else %>
<%= erb :'layout/nav/desktop' %>
<% end %>
由于
贾尔斯
答案 0 :(得分:2)
我认为这可行,你只需要使用双引号来插入字符串。
尝试
<%= erb :"layout/nav/#{device_type}" %>