嗨,我正在尝试编辑Django-Shop
.
我使用 Python 3.7.5 安装了 Django-Shop 和 Django 3.0.14 版本 1.2.4。
就我而言,我也想按重量销售产品。正如文档中所说,我必须重写CartItem
.
from django.db import models
from django.utils.translation import ugettext_lazy as _
from shop.models import cart
class CartItem(cart.BaseCartItem):
quantity = models.DecimalField(_("Cart item quantity"), decimal_places=3, max_digits=3)
我在我的models.py
. 在那之后,我也不得不重写课堂上的数量OrderItem
。
class OrderItem(BaseOrderItem):
quantity = models.DecimalField(_("Ordered quantity"), decimal_places=3, max_digits=3)
# quantity = models.PositiveIntegerField(_("Ordered quantity"))
canceled = models.BooleanField(_("Item canceled "), default=False)
def populate_from_cart_item(self, cart_item, request):
super().populate_from_cart_item(cart_item, request)
# the product's unit_price must be fetched from the product's variant
try:
variant = cart_item.product.get_product_variant(
product_code=cart_item.product_code)
self._unit_price = Decimal(variant.unit_price)
except (KeyError, ObjectDoesNotExist) as e:
raise CartItem.DoesNotExist(e)
现在我可以毫无问题地运行服务器,但我无法向我的购物车添加东西。
我不知道该怎么办...