У меня есть приложение Flask с интерфейсом Bootstrap 4, включающим шаблоны Jinja. Я хотел бы создать поведение типа корзины покупок, чтобы, когда пользователь выбирает товар, он сразу же отражался в корзине. На данный момент корзина находится в родительском шаблоне (mylayout.html), поэтому ее можно просматривать на любом дочернем шаблоне, который имеет строку {% extends "mylayout.html" %}
. Я обновляю количество товаров в Flask, используя контекстный процессор
@app.context_processor
def cart_total():
.
.
.
print('total number of items ',total)
return dict(total=total)
. В терминале я вижу правильное количество товаров, которые я затем помещаю в родительский шаблон, например,
<li><a href="/cart" class="nav-link"><i class="fas fa-shopping-cart"></i> CART {{ total }}</a></li>
Однако количество элементов не обновляется, пока я не обновлю страницу или не выберу новую страницу, т.е. после перезагрузки родительского шаблона. Я перепробовал все решения здесь и также посмотрел здесь , но все еще не получил желаемого поведения. По словам одного пользователя здесь TEMPLATES_AUTO_RELOAD
в любом случае не предназначен для этого. Прямо сейчас любые изменения, которые я делаю для родителей или детей, отражаются , за исключением количества элементов. Я не знаю, находится ли решение где-нибудь в jquery, javascript, ajax или что-то еще? Все отзывы, идеи или информация приветствуются.