問題タブ [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.
ruby - Elasticsearch Ruby Activerecord Persistence Model URL 用語検索
エラスティック検索用語クエリを使用して、URL を含むフィールドを検索しようとしています。私は ActiveRecord Persistance Pattern の elasticsearch-rails を使用しています。これが私がやろうとしている方法です。
「/」または「:」文字がない場合に機能します。たとえば、action_path が単に 'tshirt' の場合。他のフィールドは分析されず、フィールドに「/」、「:」の種類の文字がない場合に機能します。したがって、明らかにエラスティック検索はそれを分析しようとしますが、マッピングが既に存在するため分析すべきではないという問題があります。
これは私のユーザーアクションクラスです
「mapping do..」を使用してから「create_index!」を使用してインデックスを追加しようとしましたが、結果は同じです。マッピングがあるため、マッピングが作成されます。
これは私のgemファイルです
検索すると、分析されていないフィールドも表示されます。
初期化ファイルにはelastichq接続URL以外は何もありません。
データはelastichqにあるので、結果を取得する必要がありますが、取得できません。
Elastichq によるカールの結果
URL用語の検索作業を手伝ってくれる人はいますか?
ruby-on-rails - Elasticsearch-rails 補完サジェスター、データのマップ、インデックスの作成、メソッドの提案
私はelasticsearch-model
とelasticsearch-rails
宝石を使用しています。
私のプロファイルモデルには
suggest
フィールドを追加してみました
に提案しようとしていますprofile.name
、追加しましたas_indexed_json
どんな助けでも、どんな提案でもいただければ幸いです。
elasticsearch - Elastic Search RailsはIDを持つ部分レコードを見つけます
私は、elasticsearch-rails gem を使用して、Rails と Elastic Search を使用してオートコンプリートを実装しようとしています。
次のレコードがあるとします。
「ジョン」を検索したときに両方のレコードを返すために使用できるエラスティック検索方法はどれですか。
オートコンプリートは「John White」のみを返し、id:1 を返しません。
ruby-on-rails - Elasticsearch-rails が間違ったインデックスで検索しています
アプリをデプロイしてモデルにインデックスを付けようとしています。実際にelasticsearchからデータを取得しようとするまで、すべてが正常に機能しています。私の環境はステージングですが、残りの API を介して検索を実行するとエラーが発生します
これから:
間違った環境でelasticsearchにクエリを実行しようとしていると推測しました。これは何が原因ですか?
ruby-on-rails - Elasticsearch で Ruby のパスをクエリできません
私はelasticsearchインデックス「イベント」を持っています - そのインデックス内にタイプ「イベント」があります。
イベントオブジェクトには、「名前」を含むさまざまなプロパティを持つ「会場」があります。したがって、単純化された構造は次のとおりです。
今、私はelasticsearch-railsを使用しています-イベントのリスト、クエリDSLを使用した検索などはすべて正常に機能しますが、特定の名前の会場ですべてのイベントをリストしたい場合はどうすればよいですか?
私は、このようなことが可能であると仮定しています:
しかし、私は次のエラーが発生します:
この種のものがたくさん含まれている実質的なスタック トレースが続きます。
不正な形式の json を示唆する ParseExceptions - しかし、その理由はわかりません。
単純な検索
正常に動作するので、クエリの構造が間違っているだけだと思います。
一重引用符と二重引用符を切り替えてみましたが、このページの例をより厳密にフォローしてみました:
https://www.elastic.co/guide/en/elasticsearch/guide/current/denormalization.html
他の誰かがこの状況に遭遇したことがあり、ルビーでこれを機能させる方法を提案できるかどうか疑問に思いました。
ruby - Rails アプリを Elasticsearch サーバーに接続する
サーバー ログのインデックス作成に、logstash+elasticsearch を使用しています。Elasticsearch サーバーは localhost:9200 で実行されており、何百万ものサーバー ログ ドキュメントがあります。Rails アプリも localhost:3000 で実行しています。この Rails アプリを ES サーバーに接続する必要があります。
「elasticsearch-rails」gem について読んだことがありますが、どこでも ActiveRecords/Models を使用して見つけました。ただし、これには ActiveRecords は必要ないと思います。ES サーバーのインデックスにクエリを実行し、Rails アプリ内のドキュメントをフェッチする方法が必要なだけです。
これを行う方法はありますか?誰でもこの状況で私を助けてもらえますか? 私の質問がはっきりしない場合はコメントしてください。
前もって感謝します。
ruby-on-rails - Elasticsearch - Active Record モデルからのレコードの自動インポート
システム:
- レール4
- ルビー2
- エラスティックサーチ 1.6.0
Elasticsearch を使用してレコードをフィルタリングし、Active Record モデルの統計を計算しています。Elasticsearch インデックスに Postgres データベースを反映させて、既存のレコードがインデックスにインポートされたり、新しいレコードが作成されるとインデックスが作成されるようにしたいと考えています。
私のモデルの2つが次のように含まれていることに懸念があります。
しかし、Rails コンソールを開いて を呼び出すとBar.statistics
、nil
すべてのフィールドが表示されます。次に を実行するBar.import force: true
とBar.statistics
、拡張統計集計で nil 以外の正しい値が得られます。
その他の注意点: Pry を使用して Rails コンソールで foo.rb を開いて終了すると、Cannot define multiple included blocks for a Concern
エラーが発生しました (ただし、アプリケーションのロードは正常に機能します)。
自分のレコードを ES に自動インポートするための何かが不足していますか?