Я новичок в django и борюсь, я просматриваю Google, но не могу найти ничего, что может помочь.
Вот моя модель:
from django.db import models
# from django.contrib.auth.models import
class Order(models.Model):
table_id = models.IntegerField(unique=True)
meal = models.ManyToManyField('meals')
# Meal = models.ForeignKey('Meals',on_delete=models.CASCADE)
@property
def total_price(self):
price = self.meal.objects.all().aggregate(total_price=models.Sum('meals__price'))
return price['total_price']
class Meals(models.Model):
name = models.CharField(max_length=100)
price = models.DecimalField(decimal_places=2, max_digits=5)
Вот my serializer.py:
from rest_framework import serializers
from cafe_app import models
class MealSerializer(serializers.ModelSerializer):
class Meta:
model = models.Meals
fields = ['id','name','price',]
class OrderSerializer(serializers.ModelSerializer):
**meal = MealSerializer(read_only=True,many=True)**
class Meta:
model = models.Order
fields = ['table_id','meal',]
Когда я комментирую строку еды = MealSerializer (read_only = True, many = True), тогда он показывает входные данные в виде table_id и еды, где значения еды являются объектами питания (1), Среднее Объект (2) ....
Мои вопросы:
- Как отобразить значение объекта еды вместо него в качестве объекта.
- Как использовать метод total_price на мой взгляд / serializer.
- Как увидеть поток, например, как он течет из какого класса в какой класс идет вызов и каков тип и значение структуры, которую я получил.
Спасибо.