<%if @item.rigged %>Yes<%else%>No<%end%>
我在想这样的东西?
if @item.rigged ? "Yes" : "No"
但这并不奏效。Ruby有||=,但我甚至不知道如何使用那个东西。
<%if @item.rigged %>Yes<%else%>No<%end%>
我在想这样的东西?
if @item.rigged ? "Yes" : "No"
但这并不奏效。Ruby有||=,但我甚至不知道如何使用那个东西。
当前回答
为了简单起见,如果你需要默认值为nil,你可以使用:
@something.nil? = "No" || "Yes"
其他回答
为了简单起见,如果你需要默认值为nil,你可以使用:
@something.nil? = "No" || "Yes"
If else条件可以用三元运算符覆盖
@item.rigged? ? 'Yes' : 'No'
别忘了它可以从ruby标签中生成内容:
v
<%= @item.rigged? ? "Yes" : "No" %>
标记(v)表示使用等号在html中生成文本。
从if @item中删除if。操纵?“是”:“不是”
三元运算符有窗体条件吗?If_true: if_false
一行,如果:
<statement> if <condition>
你的情况:
"Yes" if @item.rigged
"No" if !@item.rigged # or: "No" unless @item.rigged