找不到所有辅助语言的 Django 翻译 returns 页面 (404)
Django translation returns page not found (404) for all secondary languages
我正在使用 Django 3.0.4。我正在尝试在我的项目中设置多种语言,但出于某种原因只能访问默认语言。
这是我的设置:
settings.py:
MIDDLEWARE = [
...
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
LANGUAGES = (
('en', _('English')),
('el', _('Greek')),
)
LANGUAGE_CODE = 'en'
USE_I18N = True
USE_L10N = False
USE_TZ = True
LOCALE_PATHS = (
os.path.join(BASE_DIR, 'locale'),
)
urls.py:
from django.conf.urls.i18n import i18n_patterns
urlpatterns = [
path('i18n/', include('django.conf.urls.i18n')),
path('superadmin/', admin.site.urls),
]
# Enable debug toolbar
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
path('__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
urlpatterns += i18n_patterns(
path(
'dashboard/',
include('fusers.dashboard_urls'),
name="usersDashboard"
),
)
结果是没有默认语言作为前缀我无法访问 dashboard/
:
/en/dashboard/ --OK
/dashboard/ --404
/el/dashboard/ --404
是我的错。
我有多个用于开发和生产的设置文件,但我忘记在开发设置中包含 'django.middleware.locale.LocaleMiddleware'
。
我正在使用 Django 3.0.4。我正在尝试在我的项目中设置多种语言,但出于某种原因只能访问默认语言。 这是我的设置:
settings.py:
MIDDLEWARE = [
...
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
LANGUAGES = (
('en', _('English')),
('el', _('Greek')),
)
LANGUAGE_CODE = 'en'
USE_I18N = True
USE_L10N = False
USE_TZ = True
LOCALE_PATHS = (
os.path.join(BASE_DIR, 'locale'),
)
urls.py:
from django.conf.urls.i18n import i18n_patterns
urlpatterns = [
path('i18n/', include('django.conf.urls.i18n')),
path('superadmin/', admin.site.urls),
]
# Enable debug toolbar
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
path('__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
urlpatterns += i18n_patterns(
path(
'dashboard/',
include('fusers.dashboard_urls'),
name="usersDashboard"
),
)
结果是没有默认语言作为前缀我无法访问 dashboard/
:
/en/dashboard/ --OK
/dashboard/ --404
/el/dashboard/ --404
是我的错。
我有多个用于开发和生产的设置文件,但我忘记在开发设置中包含 'django.middleware.locale.LocaleMiddleware'
。