Avevo bisogno di mostrare la data in formato localizzato. cioè 12/31/2013Rails 3, Visualizza solo il formato della data?
Pertanto, ho impostato il formato di data predefinito in tale formato in config/inizializzatori/datetime_formats.rb
Date::DATE_FORMATS[:default]="%m/%d/%Y"
Time::DATE_FORMATS[:default]="%m/%d/%Y %H:%M"
Tuttavia, i miei test fallito nel test di unità, perché alcune ricerche si basano su formato data. Per esempio
>> User.find_by_created_at("#{DateTime.now}")
User Load (2.7ms) SELECT `users`.* FROM `users`
WHERE `users`.`created_at` = '02/04/2013 14:43' LIMIT 1
Certo, posso cambiare tutti i modelli di utilizzare tutte data o datetime di ricerca da utilizzare classe Date o classe DateTime invece di stringa. Ma, mi sono incuriosito se possiamo applicare il formato di data di sola visualizzazione o il formato di tempo di sola visualizzazione o meno.
Esiste un modo per applicare il formato della data di visualizzazione (o dell'ora)?
----- ----- modificare
Ho già metodo personalizzato per l_or_none opinioni con la gestione delle eccezioni.
def l_or_none(object)
l(object) rescue ''
end
io non voglio ripetere questo metodo in tutto i punti di vista, e in cerca di un modo, "se la data # to_s è chiamato a vista, formattare in questo modo", senza utilizzare il mio metodo.
Perché non abbiamo un concetto come questo?
"Se questo oggetto viene utilizzato in vista, metodo di sostituzione in questo modo"
È possibile aggiungere qualche metodo in immagine per mostrare il formato localizzato senza toccare l'inizializzatori. E 'quello di cui hai bisogno? – Vinay