2011-08-27 12 views
6

Ho come al solito i miei file di traduzione in locale.dire esplicitamente in quale lingua tradurre

Ora ho una mail di invito in varie lingue.

Desidero che l'utente selezioni in quale lingua debba essere inviata la posta, poiché non si tratta della lingua dell'utente operativo, ma della lingua che il destinatario della posta dovrebbe leggere.

C'è un modo per dire esplicitamente ai binari quale lingua scegliere, come t(:my_string, :en)?

L'obiettivo è di farlo tradurre temporaneamente per una sola chiamata di t.

Questo è quello che mi serve, per dire all'interno del comando t(), quale lingua deve essere utilizzata.

Grazie.

Cordiali saluti, Joern.

risposta

3

Penso che sarà necessario impostare la lingua corretta su I18n.
È possibile utilizzare: I18n.locale = :en per impostare la lingua desiderata.
un'occhiata anche qui: I18n

+0

Lo so, ma questa non è la risposta alla mia domanda. Voglio temporaneo selezionare da un file di localizzazione, in pseudo-codice come 't (: my_sentence,: en)' per tradurre ': my_sentence' solo una volta a': it' –

+0

Non puoi fare una traduzione del genere, 't' o' I metodi guardano per il valore 'I18n.locale', quindi sarà necessario impostarlo esplicitamente. Oppure è possibile ignorare il metodo 't' :) – bor1s

+0

BTW, non è stato necessario passare il tempo a me a – bor1s

0

È possibile utilizzare il I18n backend che prendono il locale come primo argomento:

I18n.backend.translate(:en, :my_string)

6

E 'possibile passare :locale opzione per t metodo:

t :my_string, locale: :de 
Problemi correlati