django开关语言不';t工作(i18n)
我关注互联网上的教学 为什么我总是翻译不成功 请帮我看看我错过了什么 我的django开关语言不';t工作(i18n),django,django-i18n,Django,Django I18n,我关注互联网上的教学 为什么我总是翻译不成功 请帮我看看我错过了什么 我的{%trans“test”%}从不翻译 然后我单击html中的其他语言,它将转到http://127.0.0.1:8000/i18n/setlang/ 我不知道我哪里出错了 Django版本3.2 设置.py 中间件=[ ... “django.contrib.sessions.middleware.SessionMiddleware”, 'django.middleware.locale.LocaleMiddleware
{%trans“test”%}
从不翻译
然后我单击html中的其他语言,它将转到http://127.0.0.1:8000/i18n/setlang/
我不知道我哪里出错了
Django版本3.2
设置.py
中间件=[
...
“django.contrib.sessions.middleware.SessionMiddleware”,
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
模板=[
{
...
“选项”:{
“上下文处理器”:[
'django.template.context_processors.i18n',
...
],
},
},
]
语言=(
(‘en-us’、‘英语(美国)’),
('zh-tw','繁體中文(台灣)')
)
语言代码='en us'
时区='UTC'
使用_I18N=True
使用\u L10N=True
区域设置路径=[路径(基本路径,“区域设置”)]
使用_TZ=True
projects.url.py
urlpatterns=[
路径('i18n/',包括('django.conf.urls.i18n')),
]
urlpatterns+=i18n_模式(
路径(“”,include('App.url',namespace='App')),
)
App.url.py
app\u name='app'
URL模式=[
路径('index/',views.I18_Test.as_view(),name='index'),
]
场所
恩努斯
zh_tw
html
{%loadi18n%}
{%trans“test”%}
-
{%csrf_令牌%}
{%get_当前语言为语言代码%}
{%get_可用语言为语言%}
{%get_language_info_list for LANGUAGES as LANGUAGES%}
{%用于语言中的语言%}
-
{{language.name_local}}
{%endfor%}
#: templates/hello.html:12
msgid "test"
msgstr "EEE"
#: templates/hello.html:19
msgid "Language"
msgstr "En"
#: templates/hello.html:12
msgid "test"
msgstr "TTT"
#: templates/hello.html:19
msgid "Language"
msgstr "TW"
{% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
</head>
<body>
{% trans "test" %}
<nav class="navbar navbar-expand-lg navbar-light navbar-suspend" id="base-navbar">
<div class="container">
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="/" id="navbarDropdown" role="button"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{% trans "Language" %}</a>
<form action="{% url 'set_language' %}" method="post" id="lang_form">{% csrf_token %}
<input name="next" type="hidden" value="{{ redirect_to }}">
<ul class="dropdown-menu" aria-labelledby="navbarDropdown">
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
<li>
<button type="submit" name="language" value="{{ language.code }}"
class="{% if language.code == LANGUAGE_CODE %}selected{% else%}demo-text-black{% endif %} dropdown-item">
{{ language.name_local }}
</button>
</li>
{% endfor %}
</ul>
</form>
</li>
</ul>
</div>
</div>
</nav>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
crossorigin="anonymous"></script>
</body>
</html>