問題タブ [sunspot]
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-on-rails - sunspot_rails レーベンシュタイン距離演算子
私はsunspot_rails(rails3上)を使用して、レールアプリをsolrサーバーに接続しています。~ 演算子を使用してあいまい検索を実行したいと思います。とにかく、これはサポートされていないようです。現在、EdgeNGrams を使用するようにフォールバックしていますが、結果に完全に満足しているわけではありません。
なにか提案を?sunspot_rails を介してレーベンシュタイン距離検索を行うことができた人はいますか?
解決した
Sunspot が提供するadjust_solr_paramsメソッドを使用すると、デフォルトのクエリ パーサーをオーバーライドできるため、~. 基本的に、defType パラメータを設定する lucene クエリ パーサーを Sunspot で使用するようにしました。
ruby-on-rails - Sunspot: デルタ インデックスはどのように機能しますか?
私たちのプロジェクトのインデックス作成ソリューションとして、Sunspot を調査しています。ただし、情報が見つかりません。データの更新はどのように処理されますか。インデックスを作成したいクラスを「セットアップ」した場合、solr サーバーはオブジェクトへの変更についてどのように通知されますか?
さらに、次のシナリオを検討してください。
「has_many」シノニムのクラス Artwork があり、この方法でインデックスを作成します。
「ラ・ジョコンダ」と「それほど大きな笑顔ではない」という同義語を持つアートワーク「モナ・リザ」が与えられました。最後のシノニムを更新すると、solr に通知され、"Mona Lisa" のインデックスが再構築されますか?
sunspot - モデルIDで検索結果を並べ替えるSunspot Rails?
次のモデルがあり、 で検索可能にしたとしsunspot_rails
ます。
schema.xml
Rails の Sunspot の標準はid
、インデックス付きフィールドとして宣言します。Web インターフェイスを使用して solr にアクセスし、次のようなクエリをテストすると、次のようになります。
equal toを検索しCases
て正常に動作し、結果を返します。id
Case 15
問題は、Rails コンソールで Sunspot Rails を使用して検索を実行したときです。
私は得る:
これは、正しいクエリ値が正しく入力されていることを示してい:q
ますが、ヒット数は 0 です。
戻り値
keywords
それが同等ではなくtext
、コロンの前に定義されたフィールドではなく、フィールド (全文検索)のみを検索すると仮定する:
と、次のことを試すことができます。
しかし、これは Sunspot 例外で失敗します:
id
モデルのインデックス付き標準 solr/sunspot フィールドを使用して検索するにはどうすればよいですか?
質問をより便利にするために、IDで注文するにはどうすればよいですか。以下は機能しません。
動作しません。Sunspot::UnrecognizedFieldError: No field configured for Case with name 'id'
ruby-on-rails - Sunspot / Solr構成はどこで定義しますか?
サンスポットのドキュメントで、使用する必要のあるデフォルトの結果数を定義していることがわかります。
Sunspot.config.pagination.default_per_page = 12
その行をapplication.rbに追加しようとしましたが、機能しません。この設定はどこで正確に定義する必要がありますか?
ruby-on-rails - Sunspot-Solr の再インデックスの問題により、サーバーがタイムアウトしています
これをデバッグする方法がよくわかりません。どんなヒントでも大歓迎です。
基本的に、大規模なコミットを行ったところ、Sunspot-solr の問題によりサーバーが起動できなくなりました。
手動でインデックスを再作成しようとすると、気付きます。
これはリターンです:
アップデート
わかりましたので、最後に作業したコミットに戻してリベースしました。そして、私はまだ同じエラーが発生しました。それで、ps aux | grep solr
実行中の solr のインスタンスが 5 つ見つかりました。変だなと思い、一人残らず殺していきました。Blamサーバーがバックアップされ、強力に実行されました。だから今、私は再び新しいコミットを試みていますが、これらの野生の黒点のインスタンスに目を向けています。
ruby-on-rails-3 - Sunspot/Solr 検索をテストするために、Capybara/RSpec でリクエスト仕様を作成するにはどうすればよいですか?
Sunspot と Solr を使用して検索機能をテストするために、いつもの RSpec/Capybara リクエスト仕様を書きたいと思います。私は掘り下げてきましたが、これを機能させる方法が見つかりません。私は sunspot_test gem をインストールし、作成された製品が存在することを確認しました。問題はインデックス作成にあるようです。私は何が欠けていますか?
ruby-on-rails-3 - どちらの全文検索エンジンが優れていますか(Thinking SphinxまたはSunspot)?
大規模なプロジェクトには検索エンジンを選びます。私が気に入ったSunspotは、少なくともデータのインデックスを再作成するためにcronジョブを実行する必要がないという事実からです。しかし、このhttp://www.vijedi.net/2010/ruby-full-text-search-performance-thinking-sphinx-vs-sunspot-solr/を見たとき、私は疑い始めました。
ruby-on-rails-3 - Sunspot_Rails - ページ上で未定義のメソッド「検索可能」
searchable
次のようなブロックを持つモデルがあります。
コントローラーのindex
アクションで、 を呼び出しContact.new
ています。これにより、現在ステージング サーバーで実行されているページにエラー メッセージが表示されます。
#<Class:0xce0bf80> の未定義メソッド「検索可能」
スタック トレースは、コントローラー内searchable
の行を介してモデル内のブロックを指しています。Contact.new
Web ページまたはコンソール、またはステージング サーバーのコンソールを介してコードをローカルで実行すると、このエラーは表示されず、ステージング Web ページでのみ表示されます。
Solr サービスはステージング サーバーで正常に実行されており、データは正常にインデックス化されています。ステージングでボールをプレーしていない理由についての理論は受け入れられます。
編集
以下の Nick の質問への回答として、Gemfile には Sunspot の次の行が含まれています。gem 'sunspot_rails'
Gemfile.lock については、Sunspot または Solr の参照を含むすべての行を確認できます。
ruby-on-rails - Sunspot/Solr を使用してグループ化しますか?
Sunspot を使用しているときに、グループによる検索に問題があります。
次に例を示します。
30 歳のジョンという俳優が出演するすべての映画を検索します。
ここでの問題は、2 人の俳優がいる映画を見つける可能性があることです。1 人はジョンという名前で、もう 1 人は 30 歳でした。映画に 30 歳でジョンという名前の俳優がいることがわかるように、これを何らかの方法でグループ化する方法はありますか?
ruby-on-rails - Rails & Sunspot ファセットとフィルタリング
ここではかなり初心者なので、誰かが助けてくれることに感謝します。
Sunspot を使用して、自分のサイトの検索にファセットを追加しようとしています。Ryan は素晴らしい Railscast をリリースしたばかりです。私はそれを機能させ、追加のファセットを追加することができました。私の問題は、ファセットが互いに独立していることです。3 つの異なる属性に 3 つのファセットがある場合、既に選択したファセットを選択すると、両方のファセットに該当する結果のみを表示したいと思います。現時点では、あるファセットから別のファセットに切り替わるだけです。そんなに難しくないと思いますが、やり方がわかりません。
私はこのチュートリアルを見つけました: http://blog.upubly.com/2011/01/06/using-sunspot-in-your-views/ これは私がやりたいことをしていると思います。これを機能させようとしましたが、1 つのファセットだけで機能させようとしても、結果がリストされていません。ファセット名だけで、他には何もありません。
考え?
ありがとうございました!!
アップデート
私がやろうとしていることのコードサンプルは次のとおりです。
Railscasts コードを調整すると、次のようになりました。
私の StylesController で:
スタイル インデックス ビューで (これを要約する必要があることはわかっています)
私のスタイルモデルでは:
そして、私のバージョンのupublyコードは、「季節」ファセットを機能させるためにペアになっています:
Search Partial、Search Model、SearchHelper は例と同じままにしました。ファセットが他のモデルの ID だけでなくテキスト値を取得するため、ヘルパーをいじろうとしましたが、役に立ちませんでした。その機能が必要だとは思わなかったので、さまざまな属性を個々のモデルとして設定していませんが、そうではないと考え始めています。
スタイルコントローラー:
繰り返しますが、私は助けに感謝します。確かに初心者ですが、このサイトを構築するプロセスを本当に楽しんでいます。Stackoverflow はすでに私にとって大きな助けになっているので、ここに回答を投稿してくれたすべての人に感謝します。