我想根据不区分大小写的标题搜索文章。
我试图这样编码
Article.search(where: {title: /some_titles_here/i}, load: false)
但这不起作用。
答案 0 :(得分:0)
要启用对不区分大小写的字段进行字段搜索,您需要在索引创建时间的字段上创建适当的映射,以下是有关如何执行此操作的示例:
$ curl -XPUT localhost:9200/Article/ -d '
{
"settings":{
"index":{
"analysis":{
"analyzer":{
"analyzer_keyword":{
"tokenizer":"keyword",
"filter":"lowercase"
}
}
}
}
},
"mappings":{
"Article":{
"properties":{
"title":{
"analyzer":"analyzer_keyword",
"type":"string"
}
}
}
}
}'
还有一个选项可以在搜索时指定分析器,但这取决于您使用的ES版本,并且其性能可能不如在创建索引时使用分析器。