Nei modelli Django, è possibile utilizzare {{ _("Hello World") }}
o {% trans "Hello World" %}
per contrassegnare le stringhe da tradurre. In docs, l'approccio "ufficiale" sembra essere il tag {% trans %}
, ma la sintassi _()
è menzionata anche once._() o {% trans%} nei template di Django?
Come questi approcci differiscono (eccetto la sintassi) e perché dovrebbe essere preferibile piuttosto che l'altro?
Una differenza è che ovviamente non si può utilizzare {% trans %}
con i tag e filtri. Ma questo significa che posso semplicemente usare _()
ovunque, come {{ _("String") }}
? Funziona e sembra molto più pulito e più coerente rispetto all'utilizzo di {% trans "String" %}
con stringhe standalone e _()
con tag e filtri.
+1 per andare alla fonte per verificarlo. –