问题描述
这是我的序列化器
class ItemSerializer(serializers.ModelSerializer):
class Meta:
model = Item
fields = '__all__'
我的商品模型
class Item(models.Model):
uuid = models.UUIDField(primary_key=True,default=uuid.uuid4,editable=False)
user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE)
brand = models.ForeignKey(Brand,on_delete=models.CASCADE)
title = models.CharField(max_length=200)
#need to add images
description = models.TextField()
price = models.CharField(max_length=50)
created_on = models.DateTimeField(auto_Now_add=True)
这是视图集
class ItemViewSet(viewsets.ModelViewSet):
queryset = Item.objects.all()
serializer_class = ItemSerializer
permission_classes = [IsOwnerOrReadOnly]
def perform_create(self,serializer):
serializer.save(user=self.request.user)
brand_qs = Brand.objects.filter(owner=self.request.user)
if brand_qs.exists:
serializer.save(brand=brand_qs[0])
因此,在使用邮递员时,仍然需要输入用户和品牌字段,并且可以使用户字段成为我想要的任何用户,而不会与请求的用户一起保存。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)