Как добавить дополнительное поле при создании экземпляра модели DRF

У меня есть модель классной комнаты в django DRF, которая выглядит следующим образом:

class Classroom(models.Model):
    class PublishedClassrooms(models.Manager):
        def get_queryset(self):
            return super().get_queryset().filter(status="published")

    options = (("published", "Published"), ("draft", "Draft"))

    name = models.CharField(max_length=255)
    code = models.CharField(unique=True, max_length=8)
    subject = models.CharField(max_length=255, null=True, blank=True)
    section = models.CharField(max_length=255, null=True, blank=True)
    description = models.TextField(null=True, blank=True)
    status = models.CharField(max_length=10, choices=options, default="draft")
    owner = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, blank=True, null=True)
    dateCreated = models.DateTimeField(default=timezone.now)
    dateUpdated = models.DateTimeField(default=timezone.now)

    objects = models.Manager()  # default manager
    publishedClassrooms = PublishedClassrooms()  # custom manager

    class Meta:
        ordering = ("-dateUpdated",)

    def __str__(self):
        return self.name

Я хочу генерировать уникальное поле кода в сериализаторе при создании экземпляра, используя следующий код:

def get_code():
    codeID = shortuuid.ShortUUID().random(length=8)
    return codeID

Может ли кто-нибудь помочь мне в этом?

Вернуться на верх