[英]variable inside blocktranslate not translated when makemessages
I make a simple template like this我做了一个像这样的简单模板
<button class="btn">{% blocktranslate %}{{ greeting }} Quy!{% endblocktranslate %}</button>
with greeting
equals hello
. with
greeting
等于hello
。
I have added the following MIDDLEWARE
, and LANGUAGE_CODE = 'vi'
.我添加了以下
MIDDLEWARE
和LANGUAGE_CODE = 'vi'
。 Everything else is left as default.其他一切都保留为默认值。
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
and和
LANGUAGE_CODE = "vi"
TIME_ZONE = 'UTC'
USE_I18N = True
USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/4.1/howto/static-files/
STATIC_URL = 'static/'
# Default primary key field type
# https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
LANGUAGES = [
('vi', _('Vietnamese')),
('en', _('English')),
]
After running django-admin makemessages -l vi
, the .po
file is created运行
django-admin makemessages -l vi
后,创建.po
文件
msgid "%(greeting)s Quy!"
msgstr ""
I added我加了
# vi/LC_MESSAGES/django.po
msgid "hello"
msgstr "chào"
or或者
# en/LC_MESSAGES/django.po
msgid "hello"
msgstr "hi"
and then run django-admin compilemessages
but "hello" shown up instead of "chào" or "hi".然后运行
django-admin compilemessages
但显示的是“hello”而不是“chào”或“hi”。 Why I cannot translate the variable为什么我不能翻译变量
I tries it with tag translate
, and it works if I send variable greeting
as "hello", whereas for blocktranslate
I need _("hello")
我用标签
translate
尝试它,如果我将变量greeting
发送为“hello”,它就可以工作,而对于blocktranslate
我需要_("hello")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.