問題タブ [searchkick]

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.

0 投票する
1 に答える
366 参照

ruby-on-rails - ElasticSearch rails : オブジェクトの関連データで結果を並べ替える

Rails アプリに Searchkick を実装しましたが、正常に動作しています。関連するオブジェクトの数に基づいて結果を並べ替えたいと考えています。例えば。名前でユーザーを検索している場合は、結果をフォロワー数で並べ替えます。(フォロワー数が多いユーザーが先)

事前にご協力いただきありがとうございます

0 投票する
1 に答える
515 参照

ruby-on-rails-4 - Elasticsearch/Searchkick を使用した検索/オートコンプリートは以前は機能していたが、現在は機能していない

acts_as_taggable_onタグ オブジェクトで検索/オートコンプリートを実行する Rails 4.0.2 アプリがあります。これらのタグを検索可能にするために必要なコード インジェクションを実行しました。検索はしばらくの間機能しました。最近、私はいくつかのサーバー構成をいじっていましたが、現在、この検索は本番環境では機能しなくなりました。これはまだ開発段階で機能しており、実際には実稼働コンソールでも機能します。

問題を解決しません。

オートコンプリートの HTTP リクエストにアクセスしようとすると、ステータス 500 内部サーバー エラーが発生します。エラーログの読み取り

エラスティックサーチの再起動、インデックスの再作成、すべてのインデックスの再作成、インデックスの削除とインデックスの再作成など、私が知っているすべてのことを試しましたが、何も機能していないようで、途方に暮れています。私は明らかな何かを見逃していますか、それとも誰かが何が間違っているのかを見ていますか? 最大の謎は、これはすべて最近まで本番環境で機能していたものであり、コードを変更していないことです!

User編集:それが役立つ場合は、レコードの検索/オートコンプリートも行っていますが、それらは本番環境では引き続き正常に機能します...

0 投票する
0 に答える
1283 参照

ruby-on-rails - Faraday::TimeoutError","数秒後に操作がタイムアウトしました.." 関連レコードの再インデックス中のサーチキック

このような検索キックモデルのインデックスを再作成しようとしています

ここに私のカテゴリモデルがあります

Category_collectible モデル

地理結果モデル

収集可能な georesult テーブルに約 120,000 レコード、category_collectibles に約 300,000 レコード、カテゴリに 500 レコードがあります。インデックスの再作成中にシステムのメモリ使用量を確認しましたが、正常でしたが、タイムアウト エラーが発生する理由がわかりません。

0 投票する
1 に答える
2288 参照

ruby-on-rails - searchkick/elasticsearch は、複数の属性でオートコンプリートを設定します

searchkick gem を使用してアプリケーションをセットアップし、Presenters インデックスのオートコンプリート機能に取り組んでいます。私の問題は、複数のフィールド (first_name と last_name) で検索していることです。両方のフィールドでプレゼンターを検索できますが、たとえば、プレゼンターが「Jennifer Hall」の場合、「Jennifer」または「Hall」と入力できます。 「Jennifer Hall」という名前がオートコンプリート ドロップダウンに表示されますが、「Jennifer」と入力すると (スペースを追加すると)、名前が消えて候補が表示されなくなります。私の質問は、どうすればこれを修正できますか?

マイコード

このチュートリアルに従いました: Elasticsearch を使用して Rails アプリに検索とオートコンプリートを追加する

プレゼンター.rb:

presenters_controller.rb:

.map{ |プレゼンター| を取得しました ここからのアイデア:

searchkick gem を使用してレールに複数の属性をマップする方法

ただし、ソリューションを正確に実行すると、提案された名前のドロップダウンに「未定義」しか表示されませんでした。presenter.first_name + " " + presenter.last_name に変更すると、フルネームがドロップダウンに表示されるようになりました。

ルート.rb:

index.html.haml:

私は typehead.js を使用しているので、次のように動作します:

application.html.haml:

presenter.js.coffee:

繰り返しますが、私の問題は、名前を入力すると、その名前に一致するすべてのオプションがドロップダウンに表示されますが (姓と名の両方)、スペースを入力するとすぐに候補のリスト全体が表示されることです。離れます。たとえば、「Jennifer H」という名字を検索する方法がありません。問題はコントローラー/オートコンプリートアクションのマッピングにあると推測できますが、次のように入力します。

また

エラーを生成し、

ドロップダウンのすべての提案を「未定義」にします。

これを解決する方法について何か提案はありますか?

0 投票する
1 に答える
745 参照

ruby-on-rails - Rails エラスティックサーチ + サーチキック

searchkick と elasticsearch の統合に問題があります。これが私が今持っているものです:

これが私のモデルです

しかし、Rails コンソールに移動して検索しようとすると、1 つの結果しか返されません。

実際には3つ生成されるはずの結果が1つしか生成されない理由がわかりません。インストールして、elasticsearch が実行されていることを確認しました。

これで見逃したことはありますか?

ティア

0 投票する
1 に答える
385 参照

ruby-on-rails - ステミングなしのサーチキック

searchkick ( https://github.com/ankane/searchkick ) を配列として使用してデータの一部にインデックスを付けていますが、ほとんど問題なく動作します:)

私が興味を持っている分野は、著者です。私が達成したいのは、「Marias」を検索し、Searchkick が返すすべての Maria/Mario/Marais ではなく、(Javier Marias) のような姓に実際にその正確な文字列を含むすべての著者を見つけて、それらを持っていることです。はるかに大きな優先順位。

これが私が今探している方法です

これはまったく可能ですか?ティア