我的方法有问题.sort()
。例如,我有 Text() 字段的索引:
FILTER = token_filter(
'FILTER', 'edge_ngram', min_gram=3, max_gram=40)
ANALYZER = analyzer(
'ANALYZER', tokenizer='standard', type='custom', filter=[
'standard', 'lowercase', 'stop', 'asciifolding',FILTER])
class Article(DocType):
title = Text(analyzer=ANALYZER)
body = Text(analyzer='snowball')
tags = Keyword()
search = Article.search().sort('title')
search.execute()
当我尝试使用 sort 执行搜索查询时,出现错误:
elasticsearch.exceptions.RequestError: TransportError(400, 'search_phase_execution_exception', 'Fielddata 在默认情况下在文本字段上被禁用。在 [title] 上设置 fielddata=true 以便通过反转倒排索引将字段数据加载到内存中。请注意,这可以但是使用大量内存。')
在这种情况下,如何title
在不设置的情况下正确按字段排序fieldata=true
?