我有一个生成 Javascript 对象的 Rails 模板(.rhtml 文件)。它看起来像下面这样:
var volumes = {
<% for volume in @volumes %>
<%= volume.id %> : <%= volume.data %>
<%= ',' unless volume === @volumes.last %>
<% end %>
};
注意 unless
语句修饰符以禁止在最后一个元素之后打印逗号(以满足 Internet Explorer,它难以置信地不支持 JSON 属性声明中的尾随逗号)。
这似乎可行,但作为风格问题,人们认为依赖 <%= value unless condition %>
是否合理?在模板中生成适当的 render
打电话?
最佳答案
我不明白为什么不,但通常如果你发现自己在最后一个成员上设置逗号条件,你可能想改用 join
:
<%= @volumes.map {|v| "#{v.id} : #{v.data}"}.join "," %>
关于ruby-on-rails - 在 Rails 模板中使用条件语句修饰符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/272993/