Django rest framework сохранение данных в несколько таблиц из одного представления

Я новичок в DRF, мне нужно сохранить данные в две таблицы базы данных через viewset, и я не знаю, как это сделать. Я использую react для своего фронтенда вот мои модели

from django.db import models


# Create your models here.
class Customer(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=255)
    phone = models.CharField(max_length=255)
    town = models.CharField(max_length=255)
    region = models.CharField(max_length=255)
    added_on = models.DateTimeField(auto_now_add=True)
    objects = models.Manager()

class Order(models.Model):
    id = models.AutoField(primary_key=True)
    order_no = models.CharField(max_length=255)
    customer_name = models.CharField(max_length=255)
    phone = models.CharField(max_length=255)
    town = models.CharField(max_length=255)
    region = models.CharField(max_length=255)
    farmer_id = models.ForeignKey(Farmer, on_delete=models.CASCADE)
    price_per_kgs = models.CharField(max_length=255)
    kgs = models.CharField(max_length=255)
    packaging = models.CharField(max_length=255)
    transport = models.CharField(max_length=255)
    discount = models.CharField(max_length=255)
    amount = models.CharField(max_length=255)
    status = models.BooleanField(default=False)
    added_on = models.DateTimeField(auto_now_add=True)
    objects = models.Manager()

и вот мой сериализатор

from rest_framework import serializers

# Create your serializers here
from barakasalessystemApp.models import Farmer, Customer, Bill, Payments, Orders
class FarmerSerializer(serializers.ModelSerializer):
    class Meta:
        model = Farmer
        fields = "__all__"


class CustomerSerializer(serializers.ModelSerializer):
    class Meta:
        model = Customer
        fields = "__all__"
class OrdersSerializer(serializers.ModelSerializer):
    class Meta:
        model = Orders
        fields = "__all__"

    def to_representation(self, instance):
        response = super().to_representation(instance)
        response["farmer"] = FarmerSerializer(instance.farmer_id).data
        return response

это мое мнение

Я хочу хранить данные клиентов из таблицы orders без необходимости вводить их снова, потому что они все одинаковые

Вы можете использовать вложенные сериализаторы для этого типа функциональности, и тогда необходимо переопределить метод create и save

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