小编KhA*_*Han的帖子

错误“复合语句的子查询中不允许 ORDER BY”。在 Django 中使用 Union 函数

“复合语句的子查询中不允许使用 ORDER BY。” 在 Django 中使用 Icontains 加入两个查询集时,当我加入第三个查询集时出现问题,例如带有一些特殊字符的 slug

我的观点;

    if len(query)>78:
        myposts = Blogpost.objects.none()
    else:
        post_title = Blogpost.objects.filter(title__icontains=query)
        posts_content = Blogpost.objects.filter(content__icontains=query)
        posts_overview= Blogpost.objects.filter(overview__icontains=query)
        myposts = post_title.union(posts_content, posts_overview)


    if myposts.count() == 0:
        messages.warning(request, "No search results found. Please enter again.")
    context = {'myposts': myposts,'query':query}
    return render(request, 'blog/search.html', context)```
Run Code Online (Sandbox Code Playgroud)

python django search django-views

1
推荐指数
1
解决办法
698
查看次数

标签 统计

django ×1

django-views ×1

python ×1

search ×1