Сохранение ListFields и CustomFields в базу данных - Django

Я очень новичок в Django и пытаюсь понять, как я могу сохранить поля в db.

У меня есть следующая модель

class CashFlow(models.Model):
    Id = models.AutoField(primary_key=True)
    CompanyId = models.ForeignKey(Company, on_delete=models.CASCADE)
    PeriodInstant = models.TextField()
    PeriodStartDate = models.TextField()
    PeriodStartDateEndDate = models.TextField()
    Currency = models.TextField()
    Decimals = models.TextField()
    CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents = models.TextField(
        null=True)
    NetIncomeLoss = models.TextField(null=True)

Serializer:

class PeriodSerializer(serializers.Serializer):
    instant = serializers.CharField()
    startDate = serializers.CharField()
    endDate = serializers.CharField()

class CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsSerializer(serializers.Serializer):
    decimal = serializers.CharField()
    unit = serializers.CharField()
    period = PeriodSerializer(many=True)
    value = serializers.CharField()


class NetIncomeLossSerializer(serializers.Serializer):
    decimal = serializers.CharField()
    unit = serializers.CharField()
    period = PeriodSerializer(many=True)
    value = serializers.CharField()    
    
class CashFlow(serializers.Serializer):
    CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents = CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsSerializer(
        many=True)
    NetIncomeLoss = NetIncomeLossSerializer()

class CashFlowSerializer(serializers.Serializer):
    serializers.DictField(
        child=CashFlow())

Я также создал сериализатор модели, чтобы я мог отображать поля в эту модель и хранить их в базе данных

class CashFlowModelSerializer(serializers.ModelSerializer):
    class Meta:
        model = CashFlow
        fields = ('CompanyId',
                  'PeriodInstant',
                  'PeriodStartDate',
                  'PeriodStartDateEndDate',
                  'Currency',
                  'Decimals',
                  'CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents',
                  'NetIncomeLoss')

View

if request.method == 'GET':
    jsonData = ''
    data = getData('TestCompany')
    allFilings = itemgetter('filings')(data)
    for item in allFilings:
        linkToFilingDetails = itemgetter('linkToFilingDetails')(item)
        jsonData = get_data(linkToFilingDetails, "StatementsOfCashFlows")
    check = CashFlowSerializer(data=jsonData)
    if (check.is_valid()):
        print("ready to send to db")
    return JsonResponse(jsonData, safe=False)

JSON data = http://jsonblob.com/1063218156159647744

Кроме того, поскольку CompanyId не является полем, включенным в JSON из вызова API, как я могу отобразить его и сохранить?

Спасибо, что уделили время

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