Получение ошибки EvaluationTest объект не подписывается? - PullRequest
0 голосов
/ 01 апреля 2019

Я создаю функцию обновления, но я получаю сообщение об ошибке в инфраструктуре отдыха Django, так как этот объект EvaluationTest не является подписчиком. Я пытаюсь обновить вложенный сериализатор. Я новичок. Я много искал, но не смог сделать это. работа

Функция обновления

    def update(self,instance,validated_data):

   data = self.context['request'].data

   evaluationtest = EvaluationTest()

   #admin= User.objects.get('username')
   cat=Category.objects.get(id=data['category'])

   instance.category=cat

   instance.category = validated_data.get('id',instance.category)
   instance.title = validated_data.get('title',instance.title)
   instance.type = validated_data.get('type',instance.type)
   instance.save()

   instance = EvaluationTest()
  #  keep_questions=[]
  #  existing_id=[q.id for q in instance.questions]
   order = 1
   for q in instance['questions']:
     newQ = Question()
     newQ.question=q['title']
     newQ.order = order
     newQ.save()

     for c in q['choices']:
       newC = Choice()
       newC.title = c
       newC.save()
       newQ.choices.add(newC)
     newQ.answer = Choice.objects.get(title=q['answer'])
     newQ.instance = instance
     newQ.save()
     order += 1
   return instance
...