我怎样才能缩小下面的代码。它可以在一行中完成吗?
<% if pos_count < 0 %>
<% pos_name = "SHORT" %>
<% else %>
<% pos_name = "LONG" %>
<% end %>
谢谢!
我怎样才能缩小下面的代码。它可以在一行中完成吗?
<% if pos_count < 0 %>
<% pos_name = "SHORT" %>
<% else %>
<% pos_name = "LONG" %>
<% end %>
谢谢!
可以使用条件运算符(它是三元运算符)在一行中完成:
<% pos_name = (pos_count < 0) ? "SHORT" : "LONG" -%>
看起来像这个视图逻辑,最佳实践是最小化它。我建议将其提取到视图助手(或装饰器,如果您愿意)中。
作为 Istvan,建议您可以使用三元运算符,但为了便于阅读,我将其保留为 if-else 语句并将其移动到如下方法中:
应用程序/帮助者/my_view_helper.rb
module MyViewHelper
def pos_name(pos_count)
if pos_count < 0
"SHORT"
else
"LONG"
end
end
end