搜索 django-taggit 标签
Search django-taggit tags
我需要帮助将 django-taggit 标签添加到我的搜索功能中。我目前正在使用我在此处找到的搜索功能 (Search page on the django)。有什么办法可以将 taggit 合并到其中吗?还是我最好使用像 Haystack 这样的软件包?这是我公司的一个简单的内部网络应用程序,~ 3-4 轻度用户。
编辑
试图使这个问题更有针对性,而不是基于意见。下面是我目前使用的搜索功能。我如何合并 django-taggit 表,taggit_tag(存储单词的位置)和 taggit_taggeditem(存储与主模型的关系的位置)来提取这些记录,然后将它们合并 entry_query 同时只保留独特的 PK?
def search(request):
found_entries = None
if ('q' in request.GET) and request.GET['q'].strip():
# query_string is a separate function that simple cleans the search string that is passed in by the user
query_string = request.GET['q']
entry_query = get_query(query_string, ['company_name', 'stock_symbol', 'address'])
found_entries = Company.objects.filter(entry_query).order_by('company_name')\
.annotate(num_transcripts=Count('transcripts'))
return render_to_response('company_list.html', {'all_companies': found_entries})
上次我尝试将 'tags' 添加到 query_statement 中,但没有成功,但现在可以了。回答这个问题以防其他人遇到类似问题。
def search(request):
found_entries = None
if ('q' in request.GET) and request.GET['q'].strip():
query_string = request.GET['q']
entry_query = get_query(query_string, ['company_name', 'stock_symbol', 'address', 'tags'])
found_entries = Company.objects.filter(entry_query).order_by('company_name')\
.annotate(num_transcripts=Count('transcripts'))
return render_to_response('company_list.html', {'all_companies': found_entries})
我需要帮助将 django-taggit 标签添加到我的搜索功能中。我目前正在使用我在此处找到的搜索功能 (Search page on the django)。有什么办法可以将 taggit 合并到其中吗?还是我最好使用像 Haystack 这样的软件包?这是我公司的一个简单的内部网络应用程序,~ 3-4 轻度用户。
编辑
试图使这个问题更有针对性,而不是基于意见。下面是我目前使用的搜索功能。我如何合并 django-taggit 表,taggit_tag(存储单词的位置)和 taggit_taggeditem(存储与主模型的关系的位置)来提取这些记录,然后将它们合并 entry_query 同时只保留独特的 PK?
def search(request):
found_entries = None
if ('q' in request.GET) and request.GET['q'].strip():
# query_string is a separate function that simple cleans the search string that is passed in by the user
query_string = request.GET['q']
entry_query = get_query(query_string, ['company_name', 'stock_symbol', 'address'])
found_entries = Company.objects.filter(entry_query).order_by('company_name')\
.annotate(num_transcripts=Count('transcripts'))
return render_to_response('company_list.html', {'all_companies': found_entries})
上次我尝试将 'tags' 添加到 query_statement 中,但没有成功,但现在可以了。回答这个问题以防其他人遇到类似问题。
def search(request):
found_entries = None
if ('q' in request.GET) and request.GET['q'].strip():
query_string = request.GET['q']
entry_query = get_query(query_string, ['company_name', 'stock_symbol', 'address', 'tags'])
found_entries = Company.objects.filter(entry_query).order_by('company_name')\
.annotate(num_transcripts=Count('transcripts'))
return render_to_response('company_list.html', {'all_companies': found_entries})