2015-05-04 25 views
0

我想使用尚未使用的字符串。因此模板中以及視圖/模型中都沒有任何{% trans 'word_I_want_to_use' %}django - i18n - 創建翻譯,但稍後使用它?

我可以在views.py中像這樣創建它嗎?

from django.utils.translation import ugettext as _ 
_("word_I_want_to_use") 

makemessagescompilemessages

以後,我會把{% trans 'word_I_want_to_use' %}放在模板中。

這項工作?

+0

是的,這會。你的目標是讓它可用於翻譯,而不用在任何地方? – aumo

+0

@aumo yep正好 – doniyor

回答

3

是的。那可行。您還可以使用lazy translation,讓你有未使用的翻譯在不影響性能:

from django.utils.translation import ugettext_lazy as _ 
_("word_I_want_to_use") 

或者,您可以使用ugettext_noop只翻譯,但從未直接使用字符串。這取決於你的計劃和用例。

+0

非常好,非常感謝你 – doniyor