阅读ElasticSearch文档(http://www.elasticsearch.org/guide/reference/mapping/boost-field.html),它说你可以根据一个值来提升文档,这种行为是通过Tire实现的 - 如果是的话,我正在努力学习语法。
更新
看起来像;
mapping do
indexes :llt_code, :index => :not_analyze
indexes :llt_name, :analyzer => 'snowball'
indexes :_boost, :as => '_boost'
end
是我需要的,假设_boost列具有提升值?
答案 0 :(得分:4)
总是值得检查YourModel.mapping_to_hash
输出:这是轮胎在创建映射时将发送到elasticsearch的内容。事实上,你的代码是错误的 - _boost是一个顶级选项,而你发布的内容是贴在地图的属性部分
mapping(:_boost => {:name => 'foo', :null_value => 1.0}) do
indexes ...
end
应告诉elasticsearch使用名为foo
的字段,以便在适当的级别进行_boost。