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?

È stato utile?

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 %>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top