Поле сериализатора не отображается

поле trips в carserializer отображается в ответе, однако поле tickets в Tripserializer не отображается, логика выглядит довольно идентично, что я упускаю?

from rest_framework import serializers
from .models import Car, Ticket,Trip

class TicketSerializer(serializers.ModelSerializer):
      class Meta:
           model = Ticket
           fields = '__all__'
class TripSerializer(serializers.ModelSerializer):
      tickets = TicketSerializer(many=True,read_only=True,required=False,source='ticket_set' )
      class Meta:
           model = Trip
           fields = '__all__'

class CarSerializer(serializers.ModelSerializer):
      trips = TripSerializer(many=True, read_only=True, required=False, source='trip_set')
      class Meta:
         model = Car
         fields = '__all__'

вот мой models.py

from django.db import models
from django.contrib.auth import get_user_model
User = get_user_model()

class Car(models.Model):
    created_by = models.ForeignKey(User, on_delete=models.CASCADE)
    model = models.CharField(max_length=100)
    no_plate = models.CharField(max_length=10)
    pub_date = models.DateTimeField(auto_now=True)
    imgUrl = models.TextField()
    def __str__(self):
        return self.no_plate
    class Meta:
            ordering = ["-pub_date"]


class Trip(models.Model):
    car = models.ForeignKey(Car, on_delete=models.CASCADE)
    seats = models.IntegerField()
    price = models.FloatField()
    start = models.CharField(max_length=200)
    finish = models.CharField(max_length=200)
    pub_date = models.DateTimeField(auto_now=True)
    def __str__(self):
        return self.request
    class Meta:
            ordering = ["-pub_date"]

class Ticket(models.Model):
    car = models.ForeignKey(Car, on_delete=models.CASCADE)
    ticket_by = models.ForeignKey(User, on_delete=models.CASCADE)
    trip = models.ForeignKey(Trip,related_name='tickets', on_delete=models.CASCADE)
    pub_date = models.DateTimeField(auto_now=True)
    def __str__(self):
        return self.question
    class Meta:
        unique_together = ("car", "ticket_by")

и файл представлений

from rest_framework import generics,status
from .models import Car,Trip,Ticket
from .serializers import CarSerializer, TripSerializer,TicketSerializer
from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework.permissions import IsAuthenticated
from rest_framework.exceptions import PermissionDenied

class CarListCreate(generics.ListCreateAPIView):
    queryset=Car.objects.all()
    serializer_class = CarSerializer

class CarDetail(generics.RetrieveDestroyAPIView):
    queryset = Car.objects.all()
    serializer_class = CarSerializer

class TripList(generics.ListCreateAPIView):
    queryset = Trip.objects.all()
    serializer_class = TripSerializer

class CreateTicket(generics.CreateAPIView):
    serializer_class = TicketSerializer

поле trips в CarsSeriliazer отображается, однако поле tickets в Tripserilizer не отображается, хотя код практически одинаковый, что я упускаю?

После того, как мы поработали, атрибут source оказался дьяволом в деталях, поле отображалось, когда source был удален, я не знаю, почему это так... вот редактирование TripSerializer:

class TripSerializer(serializers.ModelSerializer):
    tickets = TicketSerializer(many=True,read_only=True,  )
    class Meta:
        model = Trip
        fields = '__all__'
Вернуться на верх