問題タブ [thinking-sphinx]
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 - 思考に条件を追加する方法-sphinx検索?
最近、thinking-sphinxをRubyonRailsアプリにインストールしました。一見すると、すべてがうまく機能し、単語を検索して見つけることができます。ここで、次を使用していくつかのフィルター(たとえば、州、カテゴリーなど)を追加しようとすると、
MyModel.search 'hello' :conditions => 'category_id=1'
たとえば、次の例外がスローされます。
検索されたエラー(ステータス:1):無効または切り捨てられたリクエスト
私はthinking-sphinxプラグインに関するいくつかのドキュメントを読んでいますが、この構文以外のことをしなければならないと思います。
要約すると、今までは、Windowsサービスをインストールし、1つのモデルでインデックスを定義してから、検索を試みました。繰り返しますが、条件なしで検索すると成功しましたが、条件なしで検索すると失敗しました。
どんな助けでもありがたいです。
ありがとう、ブライアン
ruby-on-rails - Sphinx-フィールドに「has」と「indexes」を使用する場合
数日前にSphinxとThinking-SphinxをRubyonRails 2.3.2にインストールしましたが、基本的な検索はうまく機能します。これは、条件なしで意味します。ここで、いくつかの条件で検索をフィルタリングしたいと思います。
アナウンスモデルがあり、インデックスは次のようになります。
間違っているかもしれませんが、これらの属性に構文を追加した場合にのみ:sortable => true
、検索の条件として使用できることに気付きました。それ以外の場合は何も見つかりません。
現在、acts_as_taggable_onプラグインも使用しています。これにより、タグとタグ付けの2つのdbテーブルが生成されます。タグのモデルはありませんacts_as_taggable_on :tags, :categories
。アナウンスモデルにあります。
私が今やりたいのは、タグでフィルタリングすることです。has tags(:id), :as => :tag_ids
それで、運が悪かったのでインデックスに追加しようとしました indexes tags(:id), :as => :tag_ids
が、それもうまくいきませんでした。
次のようなことができるように、インデックスを作成するにはどうすればよいですか。
has
そしてまた、これはとの間の違いですindexes
ありがとう、ブライアン
sql - RailsでのSQL結合についてサポートが必要
ブログがuser_idを介してUserに属するテーブルがあります。
私はthinkingsphinxを使用してブログのインデックスを作成していますが、ユーザーが現在アクティブになっているブログ(user.status = User :: ACTIVE)のインデックスのみを作成したいと考えています。
インデックスを作成するための以下のコードがありますが、「where」句が間違っていることはわかっています。それはどうあるべきですか?
更新:whereメソッドがSQLコードをデータベースエンジンに渡すだけであることがわかります。これはJOINのコードを渡すことで実行できるように見えますが、JOINステートメントを自分で作成するのに十分なSQLがわかりません。
2番目の更新:SQLをいじり回すと、JOInはWHEREの前に移動する必要があるようです。そのため、誰かがよく知っていない限り、SQLコードを使用してこれを行うことはできません。
ruby-on-rails - Rails の Webfaction 上の Sphinx
Rails アプリを適切にデプロイできるように、 webfactionの基本的な共有ホスティング プランにSphinxとthinking_sphinxをインストールしようと考えています。私の計画では、Webfaction がこれをサポートしていると確信しています。私は、スキル レベルの点で Linux の第一人者とは言えませんが、基本的なことは知っています。
sudo 権限を持たずに共有ホストに Sphinx をインストールするにはどうすればよいですか?
ruby-on-rails - Thinking Sphinx と act_as_tggable_on プラグイン
ruby on rails 2.3.2 用に Sphinx と Thinking Sphinx をインストールしました。
条件なしで検索すると、検索は正常に機能します。さて、私がやりたいのはタグによるフィルター処理です。acts_as_taggable_on プラグインを使用しているので、Announcement モデルは次のようになります。
何らかの理由で、次のコマンドを実行すると、予想とは関係のないアナウンスが 1 つだけ表示されます。たくさんの発表があるので、その代わり多くの結果を期待していました。
Announcement.search params[:announcement][:search].to_s, :with => {:tag_ids => 1}, :page => params[:page], :per_page => 10
何かが間違っていると思います。正しく検索されていません。
何が起こっているのか、誰かが私に手がかりを与えることができますか?
ありがとう、ブライアン
ruby-on-rails - Thinking Sphinx - 検索フィルターが機能しない
ruby-on-rails 2.3.2 と Windows 7 PC に Sphinx と Thinking Sphinx をインストールしました。
まず、rake ts:start を実行しても、まったく起動しません。「開始しています...」と言い続け、起動しません。それでも、単純な検索 (フィルタリングも条件もなし) は正常に機能します。フィルターを追加しようとすると、レコードが返されません。
私のモデルは次のようになります。
そして、私はこの方法で検索しています:
Thinking Sphinx が持っているすべての優れたドキュメントと、それについて読んだすべての投稿に基づいて、自分が何を間違っているのか理解できません。
インデックスを変更した後、 rake ts:index 、 ts:config コマンドを実行し、念のため searchd Windows サービスを再起動し、アプリケーションを再起動して、すべてが更新されていることを確認することを明確にしたいだけです。
前もって感謝します、
ブライアン
ruby-on-rails - スフィンクスの文字列としてブールフィールドにインデックスを付ける
postgresデータベースの検索にthinkingsphinxを使用するRubyonRailsサイトがあります。
私が検索しているテーブルのフィールドの1つは、ブール値です。検索クエリで特定のキーワードが使用されている場合に、そのブール値に一致できるようにしたいと思います。
例を挙げて完全に説明すると、
私のサイトは独自の白黒フィルムを開発する人々のためのものです。
私は人々が彼らがどのように映画を開発するかを説明するレシピテーブルを持っています。そのテーブルには、「stand_developed」(フィルムを現像する方法)と呼ばれるブール列があります。
ユーザーが「stand」という単語を検索したときに、そのフィールドがtrueである結果を返したいのですが。
私はスフィンクスのドキュメントを調べましたが、可能かどうかはわかりません。
クエリ用語を解析して条件を追加することで、コントローラーメソッド内で何かをハックできると思いますが、よりクリーンな方法はありますか?
ruby - Sphinx インデックスでアポストロフィを無視する
私のスフィンクス構成ファイルには、次のものがあります。
(charset_table エントリはここから: http://speeple.com/unicode-maps.txt )
インデックスから ' (一重引用符/apos) を除外するように sphinx に指示しているため (ab'cd -> abcd) 、クエリを実行すると and/orにkyles
一致するすべてのレコードが返されることが予想されます。ただし、実際には、これは起こりません。kyles
kyle's
sphinx - Cap の展開中に Sphinx が起動しないのは何が悪いのですか?
Rails アプリを VPS にデプロイした後、Sphinx を再起動して実行するのに苦労しています。
具体的には、次のエラーがスローされます。
** [out :: myapp.com] => ロックダウン バージョンの混合: 1.6.4
** [out :: myapp.com]
** [out :: myapp.com] searchd デーモンの起動に失敗しました。/var/www/myapp/releases/20100227224936/log/searchd.log を確認してください。
** [out :: myapp.com] searchd デーモンの開始に失敗しました。/var/www/myapp/releases/20100227224936/log/searchd.log を確認してください
ただし、ログ ファイルは作成されません。
これは私が使用している deploy.rb です (Updrift に感謝します :))
Thinking Sphinx gem、v 1.3.16、パッセンジャー 2.2.10 を使用しています。ご意見をお待ちしております。
どうもありがとう!
グレッグ
更新: Google 検索をさらに行ったところ、同様のエラーが発生した他の人が何人か見つかりました。ポート リスニング エラーに関連しているようです。私の production.sphinx.conf も同様にポート 9312 を使用していますが、sphinx.yml で 3312 を使用するように指定しています。
誰がこれを引き起こしているのか考えていますか? ありがとう。
mysql - 非テキスト検索のためのsphinx/mysqlの考え方
カテゴリ(外部キー)とオプションのテキストを含む検索がある場合、検索文字列が送信されていないカテゴリのみを「検索」するために思考スフィンクスを使用する必要がありますか?