Конвертировать Pillow в ImageField django

Помогите новичку в нелегком вопросе.

При регистрации пользователя есть поле - аватар. Мне нужно добавить в него водяной знак. Я пробую решить это так. При создании в методе create я передаю файл изображения в отдельную функцию, которая накладывает водяной знак, но после возвращает его в формате Pillow, который я не могу сохранить в поле аватар. Как мне конвертировать?

Вот сама вьюха

class UserViewSet(mixins.CreateModelMixin,
                  viewsets.GenericViewSet):

    queryset = User.objects.all()
    serializer_class = CustomUserSerializer
    permission_classes = [AllowAny]

    def create(self, request, *args, **kwargs):
        serializer = CustomUserSerializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        serializer.save()
        password = serializer.data['password']
        email = serializer.data['email']
        user = User.objects.get(email=email)
        user.set_password(password)
        user.avatar = add_watermark(user.avatar)
        user.save()
        serializer = CustomUserSerializer(user)
        headers = self.get_success_headers(serializer.data)
        return Response(serializer.data,
                        status=status.HTTP_201_CREATED,
                        headers=headers)

вот функция:

def add_watermark(input_image_path):
    base_image = Image.open(input_image_path)
    watermark = Image.open('watermark.jpg')
    base_image.paste(watermark, (0, 0))
    base_image.save(input_image_path)
    return base_image
Вернуться на верх