問題タブ [elasticsearch-rails]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
elasticsearch - フィルタリングされたクエリを Elasticsearch 5 の bool クエリに変換する際に問題が発生しました
私はelasticsearch 1.7から5.0にアップグレード中です。変更の 1 つは、bool クエリを優先してフィルター処理されたクエリを削除することです。たとえば、古いバージョンの ES で使用されているこの検索ハッシュがあります。
したがって、これは次の形式にする必要があることはわかっています。
また、不足しているクエリを 5 の must_not exists クエリに置き換える必要があることも知っています。そうは言っても、この大量にネストされたハッシュを変換する方法がわかりません。
また、elasticsearch-rails gem fyi を利用して、Rails で ES を使用/アクセスしています。
ruby-on-rails - Elasticsearch-rails で ingest-attachment プラグインをどのように使用しますか?
私は以前、現在非推奨となっている mapper-attachments プラグインを使用していましたが、これは通常のインデックス作成と一緒に使用するのがかなり簡単でした。ingest-attachment がそれに取って代わり、パイプラインなどが必要になったため、これを適切に使用する方法がわかりにくくなっています。
という名前のモデルがMedia
ありfile
、base64 でエンコードされたファイルを含むフィールドがあるとします。そのファイルには次のマッピングがあります。
curl を介して添付パイプラインを作成しました。
現在、プラグインを介してMedia.last.__elasticsearch__.index_document
実際のレコードと一緒にレコードをインデックス化するには、以前はシンプルで十分でした。file
mapper-attachments
ingest-attachment
パイプラインとelasticsearch-rails
宝石を使用してこれを行う方法がわかりません。
curl を介して次の PUT を実行できます。
これにより、エンコードされたファイルがインデックス化されますが、明らかに、モデルの残りのデータはインデックス化されません (または、以前にインデックス化されていた場合は完全に上書きされます)。curl コマンドでファイルとともにすべてのモデル属性を含める必要はありません。これを行うためのより良い方法またはより簡単な方法はありますか? パイプラインなしで完全にオフになっていて、取り込みが機能するはずですか?
ruby-on-rails - 複数の検索条件を使用したRails 4のelasticsearch、検索機能の組み合わせ
プロジェクトにelasticsearch-railsを使用しています。結合検索機能があり、すべての列が1つのテーブルにあります。カスタム検索関数を作成しただけで、検索 DSL が機能せず、結果が得られません。
params が nil を渡す可能性があります。検索 DSL を有効にするにはどうすればよいですか?
ruby-on-rails - Elasticsearch-rails の結果の精度が期待どおりではない
Railsアプリで単語を検索するためにelasticsearch-railsとelasticsearch-model gemを使用しています。
これが、実行するために検索したい私のモデルです
私の質問は、どのように単語を検索するのですか? Tシャツ、Tシャツ、Tシャツはすべて一致する必要があります。さらなる研究のためのリンクも役に立ちます。ありがとうございました
ruby-on-rails - elasticsearch-rails 検索用クエリの書き方
Railsアプリで単語を検索するためにelasticsearch-railsとelasticsearch-model gemを使用しています。
これが私のモデル article.rb で、検索して実行したい場所です:
これが私のモデルコントローラーsearch_controller.rbです
検索結果を取得しています。しかし、私の質問は次のとおりです。「ジョンチーム」を検索した場合。
完全に一致する 'john team' と、'john' または 'team' に関連するいくつかの一致を含む複数のレコードを取得します。
しかし、「john team」がデータベースで完全に一致する場合、結果は john team のみである必要があります。別のレコードは必要ありません。しかし、「john team」が存在しない場合は、「john」または「 team' 両方のキーワード。
例:
でも私はしたい
elasticsearch - geo_distance が Elasticsearch のヒットを返さない
このクエリに問題があります。geo_distance フィルターを使用すると、クエリから何も返されません。それを削除すると、適切な結果が得られます。クエリは次のとおりです。
誰かが私にヒントをくれれば幸いです。
更新 同じクエリ ロジックで Elasticsearch Ruby DSL を実行すると、適切な結果が得られます。
}}
したがって、これは非常に奇妙で、ES 構文で何が問題になっているのかわかりませんが、間違いなく期待どおりに動作するはずです。ありがとう。