問題タブ [searchlogic]
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 - Railsで単純なソート/検索を実装する最良の方法
Rails でこのようなインターフェイスを実装する最良の方法は何ですか?
現在、私は Searchlogic を使用していますが、少し面倒です。問題は次のとおりです。
特定の操作が直交していることを確認します。たとえば、「短い投稿」を選択して検索した場合、検索結果は短い投稿に制限する必要があります。
正しいリンクが「選択された」クラスを取得するようにします。現在、リンクは
<a>
であるため、クライアント側でこの状態を維持するのは困難です。たとえば、並べ替えに対する AJAX 応答で、正しいリンクが「選択された」新しい並べ替えリンク セクションが返されるようにすることで、ハッキングしています。タグの代わりにラジオ ボタンを使用<a>
すると、クライアント側で状態を維持しやすくなります。
sql - Rails/AR は、habtm が含まれていない場所を見つけます
ユーザーと各ユーザー HABTM ロールを含む Rails アプリがあります。
特定のロールを持たないユーザーを選択したい。検索ロジックを自由に使用できますが、道に迷っています。条件と結合とインクルードの組み合わせを使用してみましたが、それを釘付けにすることはできません。これは機能します:
管理者ではないが、役割のないユーザーを見つけられないユーザーを見つけるため (これも見つけたい)。
疲れた状態で欠けている単純なことは何ですか?
ruby-on-rails - サーチロジック + STI
STI との関連付けを使用する検索ロジック検索を実装しようとしていますが、STI レコードをサブクラスではなく親として選択するという問題があります。
例:
select * from users WHERE users.company LIKE
それよりも
select * from users AS agents WHERE agents.company LIKE
ActiveRecord クラス レベルでこの問題を回避できるかどうか疑問に思っています (たとえば、アソシエーションでは、エージェントが :as=>:agent またはそれらの行に沿ってロードされることを指定できるかどうかを考えていました)、または検索ロジックにパッチを当てる必要があるか、これを達成するために他に何ができるか.
私が思いついたもう 1 つのオプションは、ユーザーの代理店のリストを含むフィールドをユーザー テーブルに追加することです。例 users.agencies => エージェンシー 1 の名前、エージェンシー 2 の名前
ruby-on-rails - 2 つの名前付きスコープを OR (AND ではなく) で結合する
Annotations
体が次のいずれかであるすべてを見つけたい:
- に等しい "?"
- また
- お気に入り "[?]"
これを行う最善の方法は何ですか?
可能であれば SearchLogicを使用したいのですが、SearchLogic では次のことを行うことができます。
Annotation.body_equals('?')
Annotation.body_like('[?]')
そして、いつでもそれらを連鎖させることができます:Annotation.body_equals('?').body_like('[?]')
それらを と組み合わせる方法がわかりませんOR
。
引数が同じOR
場合、名前付きスコープを組み合わせることができることに注意してください。たとえば、次のことができます。
しかし、これは役に立ちません。
私は SearchLogic に執着していませんが、その抽象化を破る必要のないソリューションには最適です。
sql - 結合テーブルにキーを持たないすべてのレコードと、一致するキーを持つすべてのレコードに対する単一のクエリ
私は多くの居住者がいる旅行をしています。居住情報が指定されていないすべての旅行を返す単一のクエリが必要です。指定された居住地に一致するすべての旅行。
このクエリから最初のものを取得できます。
しかし、2 番目を取得するには、次のビットも追加する必要があります。
WHERE 句の前に結合を追加すると、居住者 ID があり、居住者 ID がない結果が求められます。それは明らかに何も返しません。では、1 つのクエリで完全な結果セットを取得するには、これをどのように記述すればよいでしょうか? これでは、ストアド プロシージャは許可されていません。
私はRailsを使用しているので、答えがRails固有のものであればボーナスです(ただし必須ではありません)。そして、誰かが searchlogic プラグインでこれを行う方法を示すことができれば、大きなボーナスです。
現在、名前付きスコープとして最初の要件があります。
2 番目の要件は、searchlogic から入手できます。
理想的な解決策は、次のような searchlogic スコープです。
ruby-on-rails - will_paginate での searchlogic の使用
編集all
私はそれを理解したように見えます-私はSearchlogicへの呼び出しの後に paginate を呼び出さなければなりませんでした。
これらのツールの両方を使用して、ユーザーが連絡先を検索し、ページ分割されたリスト (または検索条件を入力しない場合はページ分割されたリスト全体) を返せるようにしようとしています。ただし、それらをチェーンする適切な方法がわからないため、エラーが発生しています。
これが私のコントローラーです:
これにより、エラーが発生しますUndefined method 'all' for WillPaginate
。contact_contact_contact..._path
おそらくデフォルトの「ページあたり」が20であるため、ビューは「連絡先」という単語を20回含むパスを探しているため、すべてを削除するとエラーが発生します。
私は何を間違っていますか?このページで検索、順序付け、ページネーションをすべて行いたいと思います。
ruby-on-rails - 1つのコントローラーからの複数のモデルでSearchlogicを使用する
Searchlogicを複数のモデルでどの程度正確に使用できますか?3つのモデルからデータを取得してグリッド(テーブル)に表示するダッシュボードがあります。これら3つすべての並べ替えと検索を許可したいのですが、Searchlogicはパラメーター名として「検索」を使用するように要求しているようです。次のようなことをします:
コントローラ内および:
レコードを並べ替えようとしても、ビューでは何も起こりません。それらの1つを正常に機能するように変更しますparams[:search]
が、この状況に必要なものではありません。
ruby-on-rails - globalize2で検索ロジック?
モデルがあるとします:
そしてsearchlogicがプラグインされている場合、次のように動作することを期待しています:
残念ながら、そうではありません:
仕事をする方法はありますか?
PS私がなんとかうまくいったのは、次のとおりです。
これは見栄えがよくありません。
ruby-on-rails - Rails:または条件を使用したsearchlogic検索
Rails2.3.4とともにバージョン2.3.5の「binarylogic-searchlogic」gemを使用しています。
私がやりたいのは、複数の属性に対して指定された値をモデルで検索することです。私はこれを次のようにすべてを連鎖させることで達成します
しかし、この検索で属性が増えると、これは醜い傾向があります。代わりに、次のようなsearchlogicの検索メカニズムを使用したいと思います。
つまり、これはANDを介して検索する方法ですが、私が欲しいのはORです。これを実現する方法は2つありますが、どちらも機能しません。
1つ目:条件の前にor_を追加します
これは私に与えますThe or_last_name_like is not a valid condition. You may only use conditions that map to a named scope
2つ目:使用search.any
undefined method
#`に'を与えてくれます。
何かアイデアはありますか?READMEの正しいポイントを見逃していますか?
どうもありがとうございました!
編集:いくつかの醜い回避策の時間:
動作しますが、確かに行く方法ではありませんね。