我最近使用elasticsearch-rails和elasticsearch-model gems通过Ruby on Rails应用程序添加了ES。 我已经为我的模型添加了正确的索引和映射,并且还导入了它。但我的搜索总是返回0条记录。查询始终搜索1 = 0。
Report.first.as_indexed_json returns this:
{"id"=>26, "user_id"=>7, "status"=>"current", "user"=>{"id"=>7, "last_sign_in_at"=>Thu, 08 Sep 2016 04:39:46 UTC +00:00, "first_name"=>nil, "last_name"=>nil, "gender"=>nil, "year_of_birth"=>nil, "language"=>nil}}
其中:
> Report.search(26).records.count
Report Load (0.4ms) SELECT "reports".* FROM "reports" WHERE 1=0
=> 0
> Report.all.search(query: { match: { id: 26 } }).records.count
Report Load (0.4ms) SELECT "report_s".* FROM "reports" WHERE 1=0
=> 0
我希望在这里返回1条记录,但没有匹配。
任何人都可以帮我吗?我在这里错过了什么吗?
Report.import显示导入的4条记录,但索引页面中的文档计数没有变化。