【发布时间】:2011-03-11 10:42:45
【问题描述】:
我有一个按姓名搜索的功能,如果搜索匹配名字或姓氏,它应该返回一个人的名字。问题是,如果我搜索像 'firstname lastname' 这样的字符串,它不会找到匹配的名称(猜测是因为单词之间的空格)。我应该怎么做才能让搜索工作? 另外,如果我想用相同的搜索用户名(在另一个表中)我该怎么做? 非常感谢!
我的代码:
def search(request):
query = request.GET.get('q', '')
if query:
qset1 = (
Q(first_name__icontains=query) |
Q(last_name__icontains=query)
)
results = UserProfile.objects.filter(qset1).distinct()
else:
results = []
return render_to_response("search/searchName.html", {
'results': results,
'query': query},
context_instance=RequestContext(request))
【问题讨论】: