Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django~Q查询_Django_Django Models_Django Queryset_Django Q - Fatal编程技术网

Django~Q查询

Django~Q查询,django,django-models,django-queryset,django-q,Django,Django Models,Django Queryset,Django Q,这是我的错误,我真的找不到与我的问题类似的东西: from django.db.models import Q _entry = Entry.objects.get(Q(slug=slug, author=self.author) & ~Q(id=self.id)) TypeError:一元~:“Q”的操作数类型错误 您尝试使用Qs的另一种方法是使用++: 在django Q对象中,不仅“&”而且逗号“,”表示和,因此您还可以尝试: from django.db.models

这是我的错误,我真的找不到与我的问题类似的东西:

from django.db.models import Q    
_entry = Entry.objects.get(Q(slug=slug, author=self.author) & ~Q(id=self.id))
TypeError:一元~:“Q”的操作数类型错误


您尝试使用
Q
s的另一种方法是使用++:


在django Q对象中,不仅“&”而且逗号“,”表示和,因此您还可以尝试:

from django.db.models import Q    
_entry = Entry.objects.get(Q(slug=slug), Q(author=self.author) , ~Q(id=self.id))
虽然我无法重现你所得到的错误。另外,请确保slug、self.author和self.id有适当类型的数据进入各自的字段


这些文档是否供完整参考

能否显示更多错误消息?(前几行)您使用的是哪个Django版本?这很奇怪,您链接到的文档说“Q对象可以使用&和|运算符组合”。请注意,在文档中的示例中,&从未使用,而是使用逗号,在直接sql翻译中,您将看到它转换为sql和..对不起,您是对的也可以。谢谢你指出:)正确@Anentropic。我只是想得到一个结果,让事情保持原样。否则,alecxe答案应该是最佳解决方案
from django.db.models import Q    
_entry = Entry.objects.get(Q(slug=slug), Q(author=self.author) , ~Q(id=self.id))