refactored ImageSerializer

This commit is contained in:
Anatoly 2019-08-28 17:25:16 +03:00
parent dbb0cbc05e
commit 7a1d5e269c
2 changed files with 10 additions and 7 deletions

View File

@ -6,19 +6,22 @@ from . import models
class ImageSerializer(serializers.ModelSerializer):
"""Serializer for model Image."""
# REQUEST
image = serializers.ImageField(write_only=True)
file = serializers.ImageField(source='image',
write_only=True)
# RESPONSE
file = serializers.SerializerMethodField()
url = serializers.SerializerMethodField()
class Meta:
"""Meta class"""
model = models.Image
fields = (
'id',
'image',
'file'
'file',
'url'
)
def get_file(self, obj):
def get_url(self, obj):
"""Get absolute URL path"""
return obj.get_full_image_url(request=self.context.get('request'))

View File

@ -1,12 +1,12 @@
from rest_framework import generics
from rest_framework.permissions import AllowAny
from utils.permissions import IsAuthenticatedAndTokenIsValid
from . import models, serializers
class ImageUploadView(generics.CreateAPIView):
"""Upload image to gallery"""
permission_classes = (AllowAny, )
permission_classes = (IsAuthenticatedAndTokenIsValid, )
model = models.Image
queryset = models.Image.objects.all()
serializer_class = serializers.ImageSerializer