SuspiciousOperation at / i18n / setlang / Сессия запроса была удалена до завершения запроса - PullRequest
0 голосов
/ 24 марта 2020

My Django Локализация отлично работает в моей среде разработки, но как только я загрузил на ubuntu vps сервер с apache2 перевод больше не работает, я получаю эту ошибку, когда я пытаюсь изменить язык:

SuspiciousOperation at /i18n/setlang/
The request's session was deleted before the request completed. The user may have logged out in a concurrent request, for example.

Вот мой код:

settings.py

LANGUAGE_CODE = 'en-US'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

LOCALE_PATHS = (
    os.path.join(BASE_DIR, 'locale'),
)

Мой путь к файлам локалей такой:

base/locale/ar/LC_MESSAGES/django.po

И, наконец, вот форма, которую я использую:

        <form style="margin-left: 50px;" action="{% url 'set_language' %}" method="post">{% csrf_token %}
            <input name="next" type="hidden" value="{{ redirect_to }}">
            <select name="language" id="language">
                {% get_current_language as LANGUAGE_CODE %}
                {% get_available_languages as LANGUAGES %}
                {% get_language_info_list for LANGUAGES as languages %}
                {% for language in languages %}
                    <option value="{{ language.code }}"{% if language.code == LANGUAGE_CODE %}
                            selected{% endif %}>
                        {{ language.name_local }} ({{ language.code }})
                    </option>
                {% endfor %}
            </select>
            <input type="submit" value="{% trans 'go' %}">
        </form>

А также у меня есть 'django.middleware.locale.LocaleMiddleware', внутри MIDDLEWARE в моих settings.py

...