TypeError: невозможно распаковать неитерабельный объект Responses

Я пытаюсь сохранить некоторые данные (полученные из API) в моей базе данных. Список (с именем GetQuestion_response), полученный из этого API, выглядит примерно так (фактические данные из API намного больше, поэтому я показываю здесь первые 2 элемента списка):

GetQuestion_response = [
  {
    "Id":1,
    "GroupId":0,
    "QuestionTitle":"What is your first name?",
    "GroupName":null,
    "QuestionType":"TEXT","IsMappingAvailable":null,"BodyRegion":0,"EnableCalculation":false,
    "Responses":[]
  },
  {
    "Id":2,
    "GroupId":0,
    "QuestionTitle":"And your last name?",
    "GroupName":null,
    "QuestionType":"TEXT","IsMappingAvailable":null,"BodyRegion":0,"EnableCalculation":false,
    "Responses":[
      {'Id': 100, 'ResponseText1': 'aaaa', 'ResponseText2': 'bb', 'IsDeleted': False}
      {'Id': 101, 'ResponseText1': 'zzzz', 'IsDeleted': True}
    ]
  }
]

мой models.py:

class Responses(models.Model):
    Answer_Id = models.IntegerField(primary_key=True)
    QuestionId = models.IntegerField(default=0)
    ResponseText1 = models.CharField(max_length=500, null=True, blank=True)
    ResponseText2 = models.CharField(max_length=500, null=True, blank=True)
    ResponseText3 = models.CharField(max_length=500, null=True, blank=True)
    IsDeleted = models.BooleanField(default=False)


class GetQuestion_API(models.Model):
    Question_Id = models.IntegerField(primary_key=True)
    GroupId = models.IntegerField(default=0)
    QuestionTitle = models.TextField()
    GroupName = models.CharField(max_length=500, null=True, blank=True)
    QuestionChoice = [
        ('TEXT', 'TEXT'),
        ('BUTTON', 'BUTTON'),
        ('NUMBER', 'NUMBER')
    ]
    QuestionType = models.CharField(max_length=50, choices=QuestionChoice, default='TEXT', null=True, blank=True)
    IsMappingAvailable = models.CharField(max_length=500, null=True, blank=True)
    BodyRegion = models.CharField(max_length=200, null=True, blank=True)
    EnableCalculation = models.BooleanField(default=False)
    Responses = models.ForeignKey(Responses, on_delete=models.CASCADE, related_name="QuestionReletedResponses", null=True, blank=True)

В моем views.py:

for i in GetQuestion_response:
        this_Id = i['Id']
        this_GroupId = i['GroupId']
        this_QuestionTitle = i['QuestionTitle']
        this_GroupName = i['GroupName']
        this_QuestionType = i['QuestionType']
        this_IsMappingAvailable = i['IsMappingAvailable']
        this_BodyRegion = i['BodyRegion']
        this_EnableCalculation = i['EnableCalculation']


        GetQuestion_API_obj = GetQuestion_API.objects.create(
            Question_Id = this_Id,
            GroupId = this_GroupId,
            QuestionTitle = this_QuestionTitle,
            GroupName = this_GroupName,
            QuestionType = this_QuestionType,
            IsMappingAvailable = this_IsMappingAvailable,
            BodyRegion = this_BodyRegion,
            EnableCalculation = this_EnableCalculation,
        )

        #Creating Response Object Under question
        for j in i['Responses']:
            if j['Id'] is not None:
                Responses_Id = j['Id']
            if j['ResponseText1'] is not None:
                Responses_ResponseText1 = j['ResponseText1']
            else:
                Responses_ResponseText1 = None
            if j['ResponseText2'] is not None:
                Responses_ResponseText2 = j['ResponseText2']
            else:
                Responses_ResponseText2 = None
            if j['ResponseText3'] is not None:
                Responses_ResponseText3 = j['ResponseText3']
            else:
                Responses_ResponseText3 = None
            if j['IsDeleted'] is not None:
                Responses_IsDeleted = j['IsDeleted']

            Responses_obj, created = Responses.objects.create(
                Answer_Id = Responses_Id,
                QuestionId = this_Id,
                ResponseText1 = Responses_ResponseText1,
                ResponseText2 = Responses_ResponseText2,
                ResponseText3 = Responses_ResponseText3,
                IsDeleted = Responses_IsDeleted,
            )
            if created:
                Responses_obj.save()
                GetQuestion_API_obj.Responses_set.add(Responses_obj)
        if created:
            GetQuestion_API_obj.save()

Но, к сожалению, этот код в views.py выдает ошибки типа:

TypeError: cannot unpack non-iterable Responses object

Когда я пытаюсь запустить главный цикл в диапазоне 5 (взяв первые пять элементов списка), он работает отлично. Но когда я запускаю цикл по всему списку GetQuestion_response, содержащему все элементы, он выдает эту ошибку. Пожалуйста, подскажите, как я могу решить эту проблему?

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