2013-06-23 72 views

回答

8
@date = params[:date] || Date.today 

如果你想Date.today一個字符串,然後做Date.today.to_s按照意見:)

+0

你在'今天'之後缺少'to_s'。 –

0

我想是這樣(我假定這是在導軌):

@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編碼中。

+6

不要以爲Ruby代碼正在使用Rails。你可以假設Rails代碼使用Ruby。 –

+0

好吧,它處理params等等。無論如何,我想你可能需要acive_support所有的含糖方法,如禮物?,空白?在日常編碼中我覺得非常方便。 –

+0

'params'是一個蒼白的提示。它可能意味着周圍的代碼有一個名爲'params'的散列。如果你假設Rails,那麼你應該展示如何挑選所需的主動支持方法。 –

相關問題