有没有更好或更有效的方法来做到这一点?有没有更有效的方法来做到这一点,如果/其他?
if not params[:date]
@date = Date.today.to_s
else
@date = params[:date]
end
有没有更好或更有效的方法来做到这一点?有没有更有效的方法来做到这一点,如果/其他?
if not params[:date]
@date = Date.today.to_s
else
@date = params[:date]
end
@date = params[:date] || Date.today
如果你想Date.today
一个字符串,然后做Date.today.to_s
按照意见:)
你在'今天'之后缺少'to_s'。 –
我想是这样(我假定这是在导轨):
@date = params[:date].presence || Date.today.to_s
存在方法检查PARAMS [:日期]不是nil,而不是空的,然后将它返回值,所以它通常比只检查nil更安全。
由于锡文指出,如果你不是在Rails和你不希望要求active_support,你可以只猴子修补对象类:
class Object
def blank?
respond_to?(:empty?) ? empty? : !self
end
def present?
!blank?
end
def presence
self if present?
end
end
我觉得这三种方法非常有用在日常的Ruby编码中。
不要以为Ruby代码正在使用Rails。你可以假设Rails代码使用Ruby。 –
好吧,它处理params等等。无论如何,我想你可能需要acive_support所有的含糖方法,如礼物?,空白?在日常编码中我觉得非常方便。 –
'params'是一个苍白的提示。它可能意味着周围的代码有一个名为'params'的散列。如果你假设Rails,那么你应该展示如何挑选所需的主动支持方法。 –
'not'不应该被用于布尔逻辑,只能控制流量;改用'!'代替。 –