微信登录

django filter

表模型 - django.db.models - Q对象 - 条件 + 与或非

Q:创建或条件
&(and)
|(or)
~(not)操作符

  1. from django.db.models import Q
  2. obj = user.objects
  3. if xx_list:
  4. obj = obj.filter(Q(r1__in=xx_list) | Q(r2__in=xx_list))
  5. if xx_list:
  6. obj = obj.filter(Q(r1__in=xx_list) & Q(r2__in=xx_list))
  7. if xx_list:
  8. obj = obj.filter(~Q(r1__in=xx_list) ~ Q(r2__in=xx_list))
  9. data = obj.values()
  10. return list(data)
django filter