I defined a serializermethodfield. My problem in displaying the output. When this method exists, the image field is empty for me. But if I delete this serializermethodfield, my image output will be correct.
serilizer:
class ArticleSerializer(serializers.ModelSerializer):
user = serializers.StringRelatedField(read_only=True)
image=serializers.SerializerMethodField()
class Meta:
model=Article
fields="__all__"
validators=[Checktitle()]
def get_image (self , obj ):
request=self.context.get("request")
if obj.image:
image_url=obj.image.url
return request.build_absolute_uri(image_url)
return None
view:
class ArticleListview(APIView):
def get(self,request):
query_set=Article.objects.all()
ser = ArticleSerializer(instance=query_set,many=True,context={'request':request})
print(request)
return Response(data=ser.data)
I wanted to change the url image. But by defining this method, the image is not saved at all.
New contributor
Amirhossein is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.