Как добавить mini_wishlist для django-oscar? - PullRequest
0 голосов
/ 01 апреля 2019

Я работаю на сайтах электронной коммерции с django-oscar.У меня проблема с пожеланиями.Я хочу добавить mini_whislist на панель навигации.Это выглядит как корзина оскара.

Я пробовал этот вариант, но он работает только с разделом списков желаний.

{% if wishlists %}
   {% for wishlist in wishlists %} 
       <span class="text-muted b">{{ wishlist.name }}</span>
       <span class="text-muted b">{{ wishlist.lines.count }}</span>
   {% endfor %}
{% else %}
    <img src="{% static "images/topview.png" %}">
    <span class="p-2 text-muted b">EMPTY</span>
{% endif %}

Как мне сделать так, чтобы он отображался на каждой странице?

Ответы [ 2 ]

2 голосов
/ 09 апреля 2019

создать процессор контекста в приложении клиента ...
context_processors.py

def wishlists(request):
    if not (request.user and request.user.is_authenticated):
        return {}
    return {
        'wishlists': request.user.wishlists.all()
    }

и поместить его в файл настроек

TEMPLATE_CONTEXT_PROCESSORS = (

    'customer.context_processors.wishlists',
)

, затем выможно использовать списки пожеланий где угодно

1 голос
/ 02 апреля 2019

Одной из идей было бы поместить весь HTML-код, который вы написали для этой функции, в файл HTML, а затем использовать {% include 'your_file.html' %} в layout.html, было бы нецелесообразно помещать в base.html, поскольку панель инструментов также расширяеттот же базовый шаблон.

Также обратите внимание, что вы должны сделать то же самое в checkout / layout.html, потому что у них есть отдельный макет для страниц оформления заказа.

...