2017-08-12 98 views
0

我是django的新手。我陷入一个错误“对象不可迭代”。 plz帮助我..TypeError:'Notification'对象不可迭代

//view.py

class NotificationList(APIView): 

    def get(self,request,user_id,format=None): 

     noti = Notification.objects.filter(user_id=user_id) 
     val=[] 
     for n in noti: 
      serializer = GetNotificationSerializer(n,many=True) 
      in_id = serializer.data.get('interest_id') // this statement makes error 

//serializer.py

class GetNotificationSerializer(serializers.Serializer): 
     interest_id = serializers.PrimaryKeyRelatedField(queryset=Interest.objects.all()) 
     user_id = serializers.PrimaryKeyRelatedField(queryset=User.objects.all()) 
     article_id = serializers.PrimaryKeyRelatedField(queryset=Article.objects.all()) 
     status = serializers.IntegerField(required = True) 

//model.py

class Notification(models.Model): 
    interest_id = models.ForeignKey(Interest, on_delete=models.CASCADE) 
    user_id = models.ForeignKey(User, on_delete=models.CASCADE) 
    article_id = models.ForeignKey(Article, on_delete=models.CASCADE) 
    status = models.IntegerField() 
+0

把错误回溯 –

+0

@JuanMiGabarron我的错误回溯如下 – JBR

回答

0

删除许多kwargs

serializer = GetNotificationSerializer(n,many=True) 
#          ^^^ 

serializer = GetNotificationSerializer(n) 
#          ^^^ 
+0

感谢加入!我知道了 – JBR