1

現在、1.5 は AWS Elasticsearch がサポートする ElasticSearch の最新バージョンであるため、elasticsearch javascript API 1.5 を使用しています。

次のテンプレートを指定すると、使用すると思われるjavascriptの関数が機能します

{
  _source: ['inner_hits'],
  size: `{{size}}{{^size}}10{{/size}}`,
  from: `{{from}}{{^from}}0{{/from}}`,
  filter: {
    prefix: {
      series: `{{series}}`,
      isbn: `{{isbn}}`,
    },
  },
}

現在のフィルターは機能しますが、'series' または 'isbns' の配列をフィルターに渡すことはできません。次のフィルタ オブジェクトを使用できません

  filter: {
    terms: {
      series: [`{{series}}`],
      isbn: [`{{isbn}}`],
    },
  },

シリーズまたは isbn が渡されない場合、空の文字列に一致する本はありません。デフォルト値を渡したとしても、すべての本に一致する必要があります。つまり、すべてのシリーズとすべての isbn が含まれている必要があります。

理想的には、通常の口ひげファイルを作成し、ここで説明されている方法で事前に登録されたテンプレートを使用するだけです。

これは、クラスターにテンプレートを保存する 2 つの方法を説明しています。まず、AWS Elasticsearch ではアクセスできない config/scripts ディレクトリに保存し、次に、テンプレートを文字列として ".scripts" というインデックスに渡します。 "。

2番目のオプションについては、elasticsearch.js APIを使用してこれを行う方法がわからないため、別の方法で行う必要があり、オンラインでこの例を見つけることができません.

4

0 に答える 0