无法通过rest框架django发布图像,但表示状态代码为200
我已经设置好了所有内容,但当我开始通过post函数向DRF发布图像时,它会显示状态代码200,但不会返回对象的动态id,数据库中也没有新对象,但当我从模型中删除imagefield并尝试发布时,它不会给我错误并返回发布对象的id models.py无法通过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()
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)
更多信息可在文档中找到