Я хочу, чтобы пользователь мог изменить язык сайта с помощью выпадающего списка без входа в систему, но если он войдет в систему, сайт должен перевести его на сохраненный язык.

Я использую Django-сайт, на котором пользователь может изменить свой язык с помощью выпадающего меню. Я использую Django i18n для перевода сайта. Теперь проблема в том, что я хочу, чтобы пользователь мог посещать некоторые страницы сайта без входа в систему и мог менять язык с помощью выпадающего меню. Но когда пользователь входит в систему, язык сайта должен измениться на язык по умолчанию этого пользователя, который мы храним в его разделе porifle. Как я могу этого добиться?

language_form.html

{% load i18n %}

<form action="/i18n/setlang/?next={% url 'homepage' %}" method="post">
    {% csrf_token %}
    <select name="language" style="padding: 4px 3px;">
        {% get_current_language as LANGUAGE_CODE %}
        {% get_available_languages as LANGUAGES %}
        {% get_current_language_bidi as LANGUAGE_BIDI %}
        {% for language in LANGUAGES %}
            <option value="{{ language.0 }}"{% if language.0 == LANGUAGE_CODE %} selected {% endif %} ">
                {{ language.1 }}
            </option>
        {% endfor %}
    </select>
    {% for lang in aLANGUAGES %}
        {{lang.list}}
    {% endfor %}
    <input type="submit" value="Change language" style="padding: 3px 3px; margin-right: 10px;">
  </form>

Вышеприведенный код - это моя выпадающая форма для выбора языков, но я хочу, чтобы пользователь мог выбрать предпочитаемый язык в разделе профиля, и он будет автоматически включен при входе в систему.

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