Rails: Come rendere Data strftime consapevoli della localizzazione predefinita?
-
15-10-2019 - |
Domanda
Non ho il mio set internazionale predefinita nel environment.rb
come de
(tedesco).
vedo anche tutti i messaggi di errore in tedesco, in modo che il locale viene prelevato dal server. Ma quando provo a stampare la data con strftime
come segue:
some_date.strftime('%B, %y')
Esso stampa in lingua inglese (January, 11
), e non l'atteso tedesco (Januar, 11
).
Come faccio a stampare la data in base alla località di default?
Soluzione
Utilizzare i l
(alias per localize
) metodo, invece di strftime cruda, in questo modo:
l(date, format: '%B %d, in the year %Y')
qui per ulteriori informazioni, la speranza che aiuta.
È possibile anche definire i formati 'nome', un paio di loro (short
, long
) sono già predefiniti.
Altri suggerimenti
si può anche rendere più breve:
l(some_date, :format => '%d %B %Y')
In es.yml mettere:
es:
date:
formats:
default: "%d / %m / %Y"
In put index.html.erb:
<%= l somemodel.datefield %>