当的()需要在红宝石的方法调用在帮助我有代码:/导轨
signed_in? ? link_to("Sign out", signout_path, :method => :delete) : link_to("Sign in", signin_path)
但是同样的事情可以这样写:
if(signed_in?)
link_to 'Sign Out', signout_path, :method => :delete
else
link_to 'Sign In', signin_path
end
在第二种情况下,方法调用的参数不是必需的,在第一种情况下是这样。这是为什么?
因为在第一种情况下,它们的语法是不明确的。三元运算符是这样的:条件? if_true:if_false。如果你没有括号,那就好像你试图在真实部分有多个陈述一样。 –