【发布时间】:2016-01-28 11:03:01
【问题描述】:
在视图中,我正在尝试基于基于 django oscar 产品模型的产品序列化程序创建新产品。我总是收到此错误“NoneType”对象没有属性“属性”。以下是我的代码
Views.py
> from serializers import CategorySerializer, ProductSerializer, ProductClassSerializer
from oscar.apps.catalogue.models import Product, Category, ProductClass
class ProductViewSet(viewsets.ModelViewSet):
"""
A viewset for viewing and editing product instances.
"""
serializer_class = ProductSerializer
queryset = Product.objects.all()
# create a product
def create(self, request, format=None):
data = json.loads(request.body)
serializer = ProductSerializer(data=data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
序列化器.py
>class ProductSerializer(serializers.ModelSerializer):
class Meta:
model = Product
【问题讨论】:
-
请包括完整的堆栈跟踪...还有“OSCAR 是 AOL 专有的即时消息传递和存在信息协议。”请在添加标签之前检查标签的实际用途。
-
我是说DJANGO OSCAR电子商务平台
-
我遇到了同样的问题。因为我有一个自定义产品模型,所以我只是覆盖了它的保存方法......它试图保存 attrs。如果您确实想保存属性,您可能需要自己在 DRF 序列化程序中保存。
标签: django django-rest-framework django-oscar