无法通过rest框架django发布图像,但表示状态代码为200

无法通过rest框架django发布图像,但表示状态代码为200,django,django-rest-framework,Django,Django Rest Framework,我已经设置好了所有内容,但当我开始通过post函数向DRF发布图像时,它会显示状态代码200,但不会返回对象的动态id,数据库中也没有新对象,但当我从模型中删除imagefield并尝试发布时,它不会给我错误并返回发布对象的id models.py class Accounts(models.Model): username = models.ForeignKey(User,on_delete=models.CASCADE) bio = models.TextField()

我已经设置好了所有内容,但当我开始通过post函数向DRF发布图像时,它会显示状态代码200,但不会返回对象的动态id,数据库中也没有新对象,但当我从模型中删除imagefield并尝试发布时,它不会给我错误并返回发布对象的id

models.py

 class Accounts(models.Model):
    username = models.ForeignKey(User,on_delete=models.CASCADE)
    bio = models.TextField()
    profile_pic = models.ImageField(default='default.png')

    def __str__(self):
       return f'Account object'
序列化程序.py

from rest_framework import serializers
from .models import Accounts


class Accountserializers(serializers.ModelSerializer):

    class Meta:
       model = Accounts
       fields = '__all__'
views.py

@api_view(['POST'])
def post_data(request):
   serializer = Accountserializers(data=request.data)
   if serializer.is_valid():
        serializer.save()

     return Response(serializer.data)

这是我在发布内容时说的代码,它显示状态代码200,不返回动态id。。请帮我找到解决方案

如果有错误,您可以尝试发回错误。像这样:

@api_view(['POST'])
def post_data(request):
   serializer = Accountserializers(data=request.data)
   # or use serializer.is_valid(raise_exception=True)
   if serializer.is_valid():
        serializer.save()
        return Response(serializer.data)
   else:
        return Response(serializer.errors, status_code=status=status.HTTP_400_BAD_REQUEST)
更多信息可在文档中找到