Трудности с размещением многоязычного сайта Wagtail на alwaysdata
На моем сайте wagtail есть два языка - английский и немецкий Столкнулись с некоторыми проблемами при развертывании на alwaysdata.net
Я использую эти два приложения для многоязыковой функции в списке INSTALLED_APPS:
"wagtail.locales",
"wagtail.contrib.simple_translation",
Это промежуточное программное обеспечение:
"django.middleware.locale.LocaleMiddleware",
вот настройки в файле settings.py:
LANGUAGE_CODE = "en-us"
TIME_ZONE = "UTC"
USE_I18N = True
WAGTAIL_I18N_ENABLED = True
USE_L10N = True
USE_TZ = True
WAGTAIL_CONTENT_LANGUAGES = LANGUAGES = [ ('en', "English"), ('de', "German") ]
WAGTAIL_CONTENT_LANGUAGES_FALLBACK = {'default': 'en',}
У меня есть следующий код в главном файле urls.py:
urlpatterns += i18n_patterns (
path("", include(wagtail_urls)),
prefix_default_language=True,
)
Проект работает нормально локально и также нормально работает на рабочем сервере (с DEBUG=TRUE)
Моя проблема заключается в том, что на производственном сервере, когда я устанавливаю DEBUG в значение False, многоязычные функции становятся беспорядочными. Мне приходится вручную добавлять /en/ или /de/ в конце url, чтобы увидеть страницы в браузере
Например, если я нажимаю на логотип (из навигации), у которого url установлен на '/', он перенаправляет на mydomain.com
, но это должно быть mydomain.com/en/
или mydomain.com/de/
в зависимости от того, какой язык выбран в данный момент.
с DEBUG=True он перенаправляет на mydomain.com/en/
или mydomain.com/de/
при нажатии на логотип (можно сказать домашнюю страницу) отлично.
Что я упускаю или делаю не так?
Может ли кто-нибудь помочь мне в этом? Я буду рад ответить на любой ваш вопрос о проекте.