Django

Internazionalizzazione in Django

i18n, gettext, stringhe di traduzione, locale middleware, rilevamento della lingua, file di traduzione

20 domande da colloquio·
Senior
1

Quale funzione si deve usare per contrassegnare una stringa come traducibile in Django?

Risposta

La funzione gettext, comunemente importata con l'alias _ (underscore), è il metodo standard per contrassegnare le stringhe traducibili in Django. Cerca la traduzione della stringa nel catalogo dei messaggi corrispondente alla lingua attiva e restituisce la versione tradotta se disponibile.

2

Qual è la differenza tra gettext() e gettext_lazy() in Django?

Risposta

gettext_lazy() restituisce un oggetto proxy che viene valutato solo quando convertito in stringa, il che è essenziale per le traduzioni definite a livello di modulo (come nei models o forms). gettext() valuta immediatamente la traduzione al momento della chiamata, il che è problematico se la lingua non è ancora determinata.

3

Quale middleware di Django è responsabile dell'attivazione della lingua per ogni richiesta?

Risposta

LocaleMiddleware esamina la richiesta per determinare la lingua preferita dall'utente controllando più fonti: il prefisso dell'URL, i cookie, l'header Accept-Language del browser e l'impostazione LANGUAGE_CODE. Attiva quindi la lingua corrispondente per l'intera durata della richiesta.

4

Quale comando di Django estrae le stringhe traducibili dal codice sorgente?

5

Quale comando compila i file di traduzione .po in file binari .mo?

+17 domande da colloquio

Padroneggia Django per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis