基本的に Movie モデルから取得しようとしている、ElasticSearch クエリからネストされたデータを取得しようとしています。
title
ratings
categories
ここで、2 つのタイヤのセットアップを試しましたが、どちらも評価やカテゴリではなく、映画のタイトルのみを返します。たとえば、インデックスは次のように見えます:
curl -X POST "http://localhost:9200/movies/_search?pretty=true" -d '
{
"クエリ" : { "クエリ文字列" : {"クエリ" : "t*"} },
"ファセット": {
"カテゴリ": { "用語": {"フィールド": "カテゴリ"} }
}
}
'
{
「取った」 : 16,
"timed_out" : false,
"_shards": {
"合計" : 5,
「成功」: 5,
「失敗しました」: 0
}、
「ヒット」:{
"合計" : 3,
"max_score" : 1.0,
「ヒット」:[{
"_index" : "映画",
"_type" : "映画",
"_id": "13",
"_score" : 1.0, "_source" : {"description":null,"id":13,"title":"Tiny Plastic Men"}
}、{
"_index" : "映画",
"_type" : "映画",
"_id": "32",
"_score" : 1.0, "_source" : {"description":null,"id":32,"title":"The Extreme Truth"}
}、{
"_index" : "映画",
"_type" : "映画",
"_id": "39",
"_score" : 1.0, "_source" : {"description":null,"id":39,"title":"A Time of Day"}
} ]
}、
"ファセット": {
「カテゴリ」:{
"_type" : "用語",
「行方不明」: 3,
「合計」: 0,
「その他」: 0,
"条項" : [ ]
}
}
これは私の映画モデルです:
class Movie :分類
所属先:ユーザー
has_many :評価
マッピングする
インデックス:ID、タイプ:「整数」
インデックス:タイトル、ブースト:40
インデックス:説明、アナライザー:「スノーボール」
インデックス :カテゴリが行う
インデックス:ID、タイプ:「整数」
インデックス:名前、タイプ: 'string'、インデックス: 'not_analyzed'
終わり
インデックス :レーティング
インデックス:ID、タイプ:「整数」
インデックス:星、タイプ:「整数」
終わり
終わり
終わり
検索実験のブランチはこちら: https://github.com/mulderp/moviedb/tree/categories
ジャンル --> 評価など、検索のファセットをどのように機能させることができますか。