尝试让 SearchVector 在多个字段中搜索多个单词

问题描述

我目前在我的个人项目中使用 Postgresql、Python 和 Django。该网页有一个搜索栏,我使用 SearchVector 开始工作。我遇到的问题是我的搜索功能和 request.GET 方法返回一个元组搜索向量在我的数据库搜索该确切短语。基本上单个词搜索工作正常,但只要有人输入另一个词或词组,该词组就必须在数据库中,否则不会返回任何内容

例如:我将“god”一词放入搜索中,所有带有“god”的条目都显示正常。但是我把“神蛇”这个词放进了搜索中,即使有这些词的条目也没有出现。

这是我的搜索功能

def searchbar(request):
    if request.method == "GET":
        search = request.GET["search"],print(search)
        print(search[0])

        deity = Deity.objects.annotate(search=SearchVector('name','location','alt_name','culture','religion','description','pop_culture'),).filter(search=SearchQuery(search[0],search_type='phrase')),context = {
            "user": User.objects.get(id = request.session['user_id']),"deity": deity,"search": search[0],}
        return render(request,'search_results.html',context)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)