Ошибка 404 не найдена при debug = False в многоязычном веб-приложении django

Здравствуйте, я делаю многоязычное веб-приложение на django,

Когда DEBUG = True =>мультиязык работает нормально, когда я нажимаю на localhost:8000 он перенаправляет меня на localhost:8000/en или на последний язык, который я ставлю в любом случае.

Когда DEBUG = FALSE =>я ввожу localhost:8000, он выдает ошибку 404 not found,

вот мой set.py:

Я ставлю '*', потому что я тестирую, если это возможно, чтобы работать в любом случае, я тестирую все.

ALLOWED_HOSTS = ['localhost','localhost:8000','127.0.0.1','127.0.0.1:8000','*']
LOCALE_PATHS = ( os.path.join(BASE_DIR, 'locale'), )
LANGUAGE_CODE = 'en'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
LANGUAGES = [
  ('en', ('English')),
  ('ko', ('Korean')),
]

вот мой urls.py

from django.conf.urls.i18n import i18n_patterns

urlpatterns = [
    path('i18n/', include('django.conf.urls.i18n')),
]
urlpatterns += i18n_patterns (
    path('admin/', admin.site.urls),
    path('', include('app1.urls')),
    path('', include('app2.urls')),
)
handler404='app1.views.handle_not_found'

в моем app1 urls.py

urlpatterns = [
     path('',views.index,name="index"),
]

в debug = False это не работает так что он не знает путь locahost:8000 только он знает только localhost:8000/en как я могу сделать это всякий раз.

Не знаю, поможет ли вам это, но я настроил свои переводы таким образом в одном из моих Django проектов:

# Internationalization
# https://docs.djangoproject.com/en/3.2/topics/i18n/

LANGUAGE_CODE = 'fr'
TIME_ZONE = 'Europe/Paris'
USE_I18N = True
USE_L10N = True
USE_TZ = True

# This is defined here as a do-nothing function because we can't import
# django.utils.translation -- that module depends on the settings.
def gettext_noop(s):
    return s

LOCALE_PATHS = (os.path.join(BASE_DIR, 'locale'),)
LANGUAGES = (
    ('fr', gettext_noop('French')),
    ('en', gettext_noop('English')),
    # ('es', gettext_noop('Spanish')),
    # ('it', gettext_noop('Italian')),
    # ('ar', gettext_noop('Arab')),
)

В моем urls.py:

from django.views.i18n import JavaScriptCatalog


urlpatterns = [
    path('admin/', admin.site.urls),
    path('jsi18n/', JavaScriptCatalog.as_view(), name='javascript-catalog'),
]

Этот код немного устарел, но я надеюсь, что он поможет.

Вернуться на верх