django-filtering manytomanyfield value_list

时间:2017-09-12 13:27:18

标签: django-queryset manytomanyfield

views.py:      

def User_gek(request):
            query = request.GET.get('q')
            user_list = MYOBJECT.objects.values('users') #or values_list
            #print user_list

            for x in User:
              if query:
                if query.lower() in x.lower():
                    in_filter.append(x)

        if query:
            user_list = user_list.filter(
                Q(users__in=in_filter)
            ).distinct()
models.py
class MYOBJECT(models.Model):
 users= models.ManyToManyField(User)

我尝试从用户那里获取用户。但是当我运行此代码时出现此错误: 'ModelBase'对象不可迭代

追溯: - >用户中的故事:

1 个答案:

答案 0 :(得分:0)

问题在于:for x in User: User是一个模型,你试图基本上迭代一个类。我认为你要做的是for x in User.objects.all(),它返回数据库中每个用户的查询集。