【问题标题】:How to set product attributes to basket line in Oscar如何在 Oscar 中将产品属性设置为篮子线
【发布时间】:2019-09-20 00:57:48
【问题描述】:

我是Django-oscar 的新手,现在正在处理Basket 我可以轻松地将产品作为行添加到购物篮中,但是如果我想选择特定的产品属性添加到购物篮中怎么办? 产品 A 具有属性 {'size': ['M', 'S'], 'color': ['red', 'blue']} 如果我想将尺寸为 M 且颜色为蓝色的产品 A 添加到购物篮中,我应该怎么做?

【问题讨论】:

标签: django django-oscar


【解决方案1】:

对于那些来寻找相同问题的人, 我找到了一种方法来做到这一点: 有一个名为 Option 的 Oscar 模型,您可以将通常添加到您的项目的属性添加到您的项目 eg. Size Color Flavor ..etc 并传递产品属性中的值 因为

basket.add_product()

options 参数并且只接受 Option 实例所以我们需要它 它以这种方式作为对象列表传递:

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

如果你知道更好的方法,请在这里评论:)

【讨论】:

  • 您是如何将您的选项分配给产品的。在数据库中(否则,表单将无法验证)?我无法使用仪表板执行此操作...
  • @AshrafEmad 你能详细说明一下吗?我可以看到代码吗?您在这里谈论的是产品选项还是多选项组?
猜你喜欢
  • 2015-02-19
  • 2018-10-06
  • 1970-01-01
  • 1970-01-01
  • 2014-07-06
  • 2015-01-11
  • 2012-05-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多