0
我在测试Google App Angine的全文搜索python api。 的API搜索引擎工作正常,但我不能设法得到有序的结果,下面的描述基本步骤:https://developers.google.com/appengine/docs/python/search/sortexpressionclass如何从全文搜索查询中排序结果
的搜索功能非常简单,但sort_options不看任何区别
def FindDocuments(self, query_string, limit):
try:
sort_options=search.SortOptions(expressions=[search.SortExpression(expression='comment', default_value='',direction=search.SortExpression.ASCENDING)])
query_options = search.QueryOptions(limit=limit,sort_options=sort_options)
query_obj = search.Query(query_string=query_string, options=query_options)
return search.Index(name=_INDEX_NAME).search(query=query_obj)
except search.Error:
logging.exception('Search failed')
return None
搜索单词“项目”的结果集总是无序:
item 4
item 3
item 1
item 2
所有文档资料的正确恢复,但从未进行排序。
它只有当我编写的函数来进行排序的结果对象的工作:
results = sorted(results, key=lambda k: k.order_id)
但它并没有看起来是正确的方法,一旦排序已经是查询对象的参数。
我会感谢你们所有的线索。