Как использовать ColorThief с Django Rest Api?
Я очень начинающий в кодировании. Я хочу получить доминирующий цвет из фотографий. Цвет должен быть сохранен и показан в виде шестнадцатеричного кода.
На данный момент я создал простой код с именем картинки, шириной и высотой. Я не знаю, как реализовать ColorThief в этом маленьком проекте. В файле models внизу я создал некоторый код, который я не знаю, как запустить.
Вот некоторые из моих файлов:
Модели:
from django.db import models
from colorthief import ColorThief
class UploadImage(models.Model):
name = models.CharField(
'Name',
max_length=100,
)
image = models.ImageField(
'Image',
upload_to='uploaded_media/',
width_field='width',
height_field='height',
)
height = models.PositiveIntegerField(
'Image Height',
blank=True,
null=True,
)
width = models.PositiveIntegerField(
'Image Width',
blank=True,
null=True
)
def __index__(self):
color_thief = ColorThief(self.image)
self.image = (color_thief.get_color(quality=1),)
self.save()
return f'#{self.image[0]:02x}{self.image[1]:02x}{self.image[2]:02x}'
Виды:
from rest_framework import viewsets
from rest_imageupload.serializers import UploadImageSerializer
from imageupload.models import UploadImage
class UploadImageViewSet(viewsets.ModelViewSet):
queryset = UploadImage.objects.all()
serializer_class = UploadImageSerializer
Сериализаторы:
from rest_framework import serializers
from imageupload.models import UploadImage
class UploadImageSerializer(serializers.ModelSerializer):
class Meta:
model = UploadImage
fields = ('name', 'image', 'width', 'height')