Python Django查询:如何进行包含或不包含查询

Python Django查询:如何进行包含或不包含查询,python,django,Python,Django,我必须进行一个查询,以获取包含“wd2”子字符串或根本不包含“wd”字符串的记录。有什么办法可以做得很好吗 似乎有点像: Record.objects.filter(来自django: 您可以通过将Q对象与&和|运算符组合并使用括号分组,来编写任意复杂度的语句。此外,还可以使用~运算符对Q对象进行求反,从而允许结合普通查询和求反(非)查询的组合查找: 所以我建议 Record.objects.filter( Q(parameter__icontains="wd2") | ~Q(parameter

我必须进行一个查询,以获取包含“wd2”子字符串或根本不包含“wd”字符串的记录。有什么办法可以做得很好吗

似乎有点像:

Record.objects.filter(来自django:

您可以通过将Q对象与&和|运算符组合并使用括号分组,来编写任意复杂度的语句。此外,还可以使用~运算符对Q对象进行求反,从而允许结合普通查询和求反(非)查询的组合查找:

所以我建议

Record.objects.filter( Q(parameter__icontains="wd2") | ~Q(parameter__icontains="wd") )

哇,我不知道接线员。非常感谢你!这不是很优雅吗?我喜欢在更高层次的组合范例中重用低级逻辑思想!
Record.objects.filter( Q(parameter__icontains="wd2") | ~Q(parameter__icontains="wd") )