Вложенная модель при ManyToMany в джанго, fk на обе модели, как отобразить?

class BookingSerializer(serializers.ModelSerializer):
    ganttBarConfig = serializers.ReadOnlyField()
    user = UserSerializer()

    class Meta:
        model = Booking
        fields = "__all__"


class EmployeeSerializer(serializers.ModelSerializer):
    bookings_st = BookingSerializer(many=True, read_only=True)

    class Meta:
        model = Employee
        fields = "__all__"


class ProjectSerializer(serializers.ModelSerializer):
    employees = EmployeeSerializer(read_only=True, many=True)

    class Meta:
        model = Project
        fields = "__all__"
class Employee(models.Model):
    name = models.CharField(max_length=127)
    lastname = models.CharField(max_length=127)


class Project(models.Model):
    title = models.CharField(max_length=127)
    employees = models.ManyToManyField(Employee,
                                       related_name='employees')

class Booking(models.Model):
    start = models.DateField()
    end = models.DateField()
    employee = models.ForeignKey(Employee,
                                 on_delete=models.CASCADE,
                                 related_name='bookings_st')
    project = models.ForeignKey(Project,
                                on_delete=models.CASCADE,
                                related_name='bookings_st')
   

Три простых сериалайзера, Project и Employee связаны manyToMany, booking имеет fk на Project и Employee, в результате получаю два уровня вложености (Employee в projects, а booking в Employee), но во второй попадают все букинг Employee, (относящиеся к другим project тоже), как сказать джанге, чтобы кидала только букинги этого проекта?

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