Django

Django-internationalisatie

i18n, gettext, vertaalstrings, locale middleware, taaldetectie, vertaalbestanden

20 gespreksvragen·
Senior
1

Welke functie moet worden gebruikt om een string als vertaalbaar te markeren in Django?

Antwoord

De functie gettext, doorgaans geïmporteerd met de alias _ (underscore), is de standaardmethode om vertaalbare strings te markeren in Django. Ze zoekt de vertaling van de string op in de berichtencatalogus die overeenkomt met de actieve taal en geeft de vertaalde versie terug indien beschikbaar.

2

Wat is het verschil tussen gettext() en gettext_lazy() in Django?

Antwoord

gettext_lazy() retourneert een proxy-object dat pas wordt geëvalueerd wanneer het naar een string wordt omgezet, wat essentieel is voor vertalingen die op moduleniveau worden gedefinieerd (zoals in models of forms). gettext() evalueert de vertaling onmiddellijk bij het aanroepen, wat problematisch is als de taal nog niet is bepaald.

3

Welke Django-middleware is verantwoordelijk voor het activeren van de taal bij elke request?

Antwoord

LocaleMiddleware onderzoekt de request om de voorkeurstaal van de gebruiker te bepalen door meerdere bronnen te controleren: het URL-prefix, cookies, de Accept-Language-header van de browser en de LANGUAGE_CODE-instelling. Vervolgens activeert het de bijbehorende taal voor de volledige duur van de request.

4

Welk Django-commando extraheert vertaalbare strings uit de broncode?

5

Welk commando compileert .po-vertaalbestanden naar binaire .mo-bestanden?

+17 gespreksvragen

Beheers Django voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis