Оператор if else в шаблоне django на основе данных request.session

Я пытаюсь предотвратить/разрешить пользователю нажать на кнопку в зависимости от того, присутствует ли ключ в данных request.session.

Это работает для блокировки, но когда ключ добавлен в сессию, это не отражается на веб-странице/шаблоне, и ключ остается заблокированным. Я предполагаю, что мне придется сделать это в JS, но я не уверен, как к этому подойти. Есть идеи?

Спасибо

                        {% if choices not in request.session %}
                        <form class="submit-form" action="{% url 'search' %}" method="post" onsubmit="return false;">
                            {% csrf_token %}
                            <input type="submit" class="show-more-button cunt" style="margin-left: 5px" name="mybtn"
                                   value="Search" data-bs-toggle="popover"
                                           data-bs-placement="right" data-bs-trigger="focus"
                                           data-bs-content="Please select one or more ingredient">
                        </form>
                        {% else %}
                        <form action="{% url 'search' %}" method="post">
                            {% csrf_token %}
                            <input type="submit" class="show-more-button" style="margin-left: 5px" name="mybtn"
                                   value="Search">
                        </form>
                        {% endif %}
    if request.POST.get('button_color') == 'green':

        selected_ingredients = request.session.get('choices', [])
        selected_ingredients.insert(len(selected_ingredients), ingredients_name)
        request.session['choices'] = selected_ingredients
        request.session.modified = True
Вернуться на верх