Как установить атрибуты товара для линии корзины в Оскаре - PullRequest
2 голосов
/ 01 мая 2019

Я новичок в Django-oscar и работаю над Basket, теперь я могу легко добавлять продукты в виде строк в корзину, но что, если я хочу выбрать определенный атрибут Product для добавления в корзину, например, продукт A имеет атрибуты {'size': ['M', 'S'], 'color': ['red', 'blue']} что мне делать, если я хочу добавить в корзину продукт A с размером M и синим цветом?

1 Ответ

2 голосов
/ 07 мая 2019

для тех, кто будет искать ту же проблему, я нашел способ сделать это: есть модель Оскара под названием Option, вы можете добавить атрибуты, которые вы обычно добавляете к своим элементам eg. Size Color Flavor ..etc, и передать значение изатрибуты продукта, потому что

basket.add_product()

имеет аргумент options и принимает только экземпляр Option, поэтому нам нужно, чтобы он передавался в виде списка объектов следующим образом:

[
{'option': Option.objects.get(name="name"), 'value': 'Value'},
]

, пожалуйста, если выузнать лучший способ сделать это, прокомментируйте здесь:)

...