При использовании Django-Oscar появилась явная проблема с выводом списка товаров на главную страницу.
Стандартный метод не срабатывает из-за защиты проверки сессии (request.strategy.fetch_for_product(product)):
Когда я выводу товары в каталоге отлично все работает. Когда пытаюсь сделать это для главной страницы либо список пустой либо вылетает ошибка.
Если использовать способ из документации (вставка блока содержимого) все время вылетает ошибка:
'str' object has no attribute 'strategy'
Ошибка в этом коде, который проверяется сессию:
from django import template
register = template.Library()
@register.assignment_tag
def purchase_info_for_product(request, product):
if product.is_parent:
return request.strategy.fetch_for_parent(product)
return request.strategy.fetch_for_product(product)
@register.assignment_tag
def purchase_info_for_line(request, line):
return request.strategy.fetch_for_line(line)
Просьба подсказать рабочие примеры или обходные пути.
UPD: Ошибка оказалась в версии Django=1.10.5. После отката на версию 1.9.12 ошибка исчезла.
Товары выводятся на главную через блок автоматический список товаров.