Q' 对象没有属性 'split' - Django
我有一个模型:
class Authors(models.Model):
name = models.TextField()
person = models.ForeignKey(Person)
还有一个查询:
authors = Author.objects.filter(
(Q(name__iregex=r"\y{0}\y".format(s1)),
~Q(name__iregex=r"\y{0}\y".format(s2))
),
person=None).order_by('-id')
我遇到了这个错误:
'Q' object has no attribute 'split'
这是为什么呢?我并没有使用 split()
呢……错误出现在这个查询的那一行。
1 个回答
10
我觉得你需要用逻辑运算符,比如 |
或 &
,把你的 Q()
过滤条件连接起来。
authors = Author.objects.filter(
(Q(name__iregex=r"\y{0}\y".format(s1)) &
~Q(name__iregex=r"\y{0}\y".format(s2))
),
person=None).order_by('-id')