Присвоение дочернего поля родительскому при создании с помощью django-mptt

Вопрос в том, как я могу создать с помощью django-mptt, новое подразделение с именем родителя (которое уже есть в DB)?

как новый продукт>аккаунт, но с уже FK для родительского суб-аккаунта (по его имени, например)

Модели:

    class Product(models.Model):
       account = models.OneToOneField(
        Account,
        primary_key=True,
        related_name='product',
        on_delete=models.CASCADE,
    )

   class Account(models.Model):
     subs = models.ForeignKey(
        Subs, related_name='accounts', on_delete=models.CASCADE,
    )
     

    class Subs(models.Model, MPTTModel):
         name = models.CharField(max_length=255)
         parent = TreeForeignKey(
            'self', on_delete=models.CASCADE, null=True, blank=True, related_name='subs')

Сериализаторы:

class ProductCreateSerializer(CreateModelSerializer):

    subs = serializers.PrimaryKeyRelatedField(queryset=Subs.objects.all())
    account = serializers.PrimaryKeyRelatedField(queryset=Account.objects.all())

    class Meta:
        model = Product
        fields = "__all__"

    def create(self, validated_data):
        subs = validated_data.pop("subs")
        account = Account.objects.create(
            subs=subs, account=account, name=validated_data['name']
        )
        validated_data["account"] = account

        return super().create(validated_data)
   
Вернуться на верх