如何做一个小于或等于过滤器在Django queryset?

我试图通过每个用户配置文件中称为配置文件的自定义字段过滤用户。这个字段叫做level,取值为0-3之间的整数。

如果我使用等号进行过滤,我将得到一个预期的所选级别的用户列表:

user_list = User.objects.filter(userprofile__level = 0)

当我试图过滤使用小于:

user_list = User.objects.filter(userprofile__level < 3)

我得到了错误:

未定义全局名“userprofile__level”

有没有办法过滤<或者>,或者我找错人了。

231613 次浏览

小于或等于:

User.objects.filter(userprofile__level__lte=0)

大于或等于:

User.objects.filter(userprofile__level__gte=0)

类似地,lt表示小于,gt表示大于。你可以找到他们都在文档中