How to get Full URL or get absolute url In Django

this is use full to get full url for images or files.
getting:
[
    {
        "id"1,
        "photo_url""/media/media/11_sUhP0CC.png"
    }
]

Need: (after apply below process we get full url)
[
    {
        "id"1,
        "photo_url""http://localhost:8000/media/media/11_sUhP0CC.png"
    }
]

Existing code:


models.py
class Car(models.Model):
    name = models.CharField(max_length=255)
    price = models.DecimalField(max_digits=5, decimal_places=2)
    photo = models.ImageField(upload_to='cars')
serializers.py
class CarSerializer(serializers.ModelSerializer):
    class Meta:
        model = Car
        fields = ('id','name','price', 'photo') 
views.py
class CarView(APIView):
    permission_classes = ()
    def get(self, request):
        car = Car.objects.all()
        serializer = CarSerializer(car)
        return Response(serializer.data)

Need to Do Modificatio:

serializers.py

class CarSerializer(serializers.ModelSerializer):
    photo_url = serializers.SerializerMethodField()

    class Meta:
        model = Car
        fields = ('id','name','price', 'photo_url') 

    def get_photo_url(self, car):
        request = self.context.get('request')
        photo_url = car.photo.url
        return request.build_absolute_uri(photo_url)

views.py:

class ApplicationLogo(viewsets.ModelViewSet):
queryset = Logo.objects.all()
serializer_class = LogoSerializer
permission_classes = (IsAuthenticated,)
def list(self,request):
    if request.user: 
        qs = Object.objects.all()
        return Response(MySerializer(qs, many=True, context={'request': request}).data)

 

Comments

Popular posts from this blog

ERR: error parsing query: found influx, expected SELECT, DELETE, SHOW, CREATE, DROP, EXPLAIN, GRANT, REVOKE, ALTER, SET, KILL at line

How To Convert Html File/URL/String Into Image Using Python