Недопустимый литерал для int() с базой 10: b'31 11:15:47.294407' на Django

У меня есть такая модель

когда я создал элемент. он выдает ошибку вроде этой: invalid literal for int() with base 10: b'31 11:47:21.619913'

    from django.db import models
from django.core.validators import MinValueValidator, MaxValueValidator


class Book(models.Model):
    name = models.CharField(max_length=255)
    writer = models.CharField(max_length=255)
    explanation = models.TextField(blank=True, null=True)

    creation_date = models.DateTimeField(auto_now_add=True)
    updated_date = models.DateTimeField(auto_now=True)
    publication_date = models.DateTimeField()

    def __str__(self):
        return f'{self.name} - {self.writer}'


class Comment(models.Model):
    book = models.ForeignKey(Book, on_delete=models.CASCADE, related_name='comments')
    owner = models.CharField(max_length=255)
    comment = models.TextField(blank=True, null=True)

    publication_date = models.DateTimeField(auto_now_add=True)
    updated_date = models.DateTimeField(auto_now=True)

    rating = models.PositiveIntegerField(validators=[MinValueValidator(1), MaxValueValidator(5)])

    def __str__(self):
        return self.rating

вы пытаетесь вернуть целочисленное поле в эту строковую функцию.

вместо этого в модели Comment:

def __str__(self):
        return self.rating

try:

 def __str__(self):
        return str(self.rating)

Отбросит ошибку.

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