[''<BoundField value=14.99 errors=None>'' значение должно быть десятичным числом''].

Я создаю модель ресторана и получаю ошибку

ValidationError at /api/restaurateur/create_meal/
['“<BoundField value=14.99 errors=None>” value must be a decimal number.']

Как я могу исправить эту ошибку?

Мое мнение:

 @action(['POST'], detail=False, url_path='create_meal')
    def create_meal(self, *args, **kwargs):
        meal_data = self.request.data
        restaurant = Restaurant.objects.get(owner=self.request.user)
        serializer = MealSerializer(meal_data)

        meal_create(title=serializer["title"],
                    description=serializer["description"],
                    price=serializer["price"],
                    restaurant=restaurant,
                    slug=serializer["slug"],
                    discount=serializer["discount"],
                    )

serivce.py

def meal_create(title, description, price, restaurant, slug, discount):
    meal = Meal.objects.create(title=title,
                               description=description,
                               price=price,
                               restaurant=restaurant,
                               slug=slug,
                               discount=discount,
                               )
    meal.save()

models.py

class Meal(models.Model):
    """Meal"""

    title = models.CharField(max_length=255)
    description = models.TextField(default='The description will be later')
    price = models.DecimalField(max_digits=9, decimal_places=2)
    discount = models.IntegerField(default=0)
    restaurant = models.ForeignKey(Restaurant, on_delete=models.CASCADE, null=True)
    slug = models.SlugField(unique=True)

Почему я получаю эту ошибку и как ее исправить?

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