問題タブ [ransack]
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-3 - Rails 3 - ランサック - check_box_tag
チェックボックス付きのRansackを使用して検索を実装しようとしています。ユーザーが選択したエリアをチェックすると、検索により、選択したエリアのすべてのリストが返されます。
コンソール出力:
複数のチェックボックス値を受け入れるように実装する方法がわかりません。
ruby-on-rails-3 - カスタム ransacker がエラーを返す - []:ActiveRecord::Relation の未定義のメソッド `gsub'
Rails 3.2.11 アプリで Ransack を使用していますが、気に入っています。現在、次のように特定の高校に一致するプロファイルを検索しています。
ただし、これにいくつかのロジックを追加し、検索をさらに絞り込み、他のユーザーが高校で検索できるようにしたいと考えています。
したがって、プロファイルの :high_school に特定のテキストが含まれているかどうかに加えて、プロファイルの :show_high_school が true であるかどうかのチェックを追加する方法があるかどうか疑問に思っています。
ざっと調べた後 (具体的には hereとhere )、次のカスタム ランサッカーを試しました。
これを、プロファイルが 1 つあるユーザー モデルと、ユーザーに属しているプロファイル モデルの両方に追加しました。いずれの場合も、エラーが発生します。
Profile.rb で定義すると、次のエラーが表示されます。
私のDBはPostgreSQLです
ruby-on-rails - Ransack 検索をデータベースに保存するにはどうすればよいですか?
Ransack 検索をデータベースに保存しようとしています。params[:q]
値を保存して、検索を思い出したいときにそれを検索 URL に追加できるはずだと思います。params[:q]
ただし、値を保存する方法がわかりません。
Ransack が作成する URL は次のようなものです。
検索を保存するアクションへの私のルートは次のとおりです。
ビューでこのコードを使用すると:
コントローラーで次のコードを使用します。
次に、保存されるデータは次のとおりです。
だから、データがデータベースに入るときに(そしておそらく出てくるときにも)何らかの方法でデータをフォーマットする必要があります...シリアル化について何か読んだことがありますが、うまくいきませんでした。
params[:q]
データベースにアクセスして、後で完全な検索 URL を再作成するために使用するにはどうすればよいですか?
ruby-on-rails-3 - Rails 3は、ransackを使用して検索と並べ替えを行い、並べ替え選択のオプションを制限しようとしています
Railsアプリケーションにリストのリストを表示するページがあります(will_paginateを使用してページ分割されています)。このページのリストを使用して検索と並べ替えを実装するための優れた宝石を見つけようとしています。ランサックの宝石は私が必要としていたもののように見えましたが、問題が発生しています。これは、私のコードがRansackgemで現在どのように見えるかです。
私のモデル(モデル全体が含まれていなかった、検証と余分なコードが邪魔にならないようにしたかった):
私のコントローラーのアクション:
ページ上の私の検索フォーム:
私のルート:
これですべてが整ったので、アプリケーションでリストを正常に検索および並べ替えることができました。
私の質問:このsort_select
フィールドには、「略奪可能」なすべてのオプションが表示されています。1つの属性を検索に使用できるようにするが、並べ替えには使用できないようにする方法はありますか?たとえば、属性を検索する機能が必要description
ですが、その属性を並べ替えに含めるのは意味がありません。一方で属性を使用し、もう一方では使用しないようにするにはどうすればよいですか?助けてくれてありがとう、そして私の質問が十分に明確でないなら私に知らせてください。
ruby-on-rails - Ruby RoR、Ransack、複数選択クエリが失敗する
ransack gemを使用すると、複数選択でフォームを使用できるはずであることがわかりました。
私が使用する選択フォームの基本的なhtmlを使用してから、両方のオプションを選択して、どちらかの値を検索できるようにします
そしてまた試した
「equal any」、「contains any」などのすべての述語の組み合わせで、
結果が出ます
と
リンクhttps://github.com/ernie/ransack/issues/7は可能だと言っていますが、正しい結果が得られないようです。
ruby-on-rails - Ransackが多形列型(初期化されていない定数)で機能しない
http://railscasts.com/episodes/370-ransack?view=asciicastに従ってRansackを設定しましたが、orders#indexコントローラーを使用してOrdersテーブルのほとんどの列を検索できます。
ただし、他のモデルとのポリモーフィックな関連付けを格納する2つの列であるorderable_typeまたはorderable_idは検索されません。誰かが理由を知っていますか、またはこれをどのように回避しますか?
モデル:
コントローラ:
意見:
そして、私が受け取るエラーは次のとおりです。
初期化されていない定数Order::Orderable抽出されたソース(行#13付近):
10:= f.text_field:location_place_matches 11:.field 12:= f.label:orderable_type_matches、 "Type" 13:= f.text_field:orderable_type_matches 14:.field 15:= f.label:created_at_gteq、 "Created between" 16 := f.text_field:created_at_gteq、'データの動作'=>'datepicker'
私の人生では、orderable_typeが他のすべての列とは異なる方法で処理されている理由がわかりません-誰かが修正するのを手伝ってもらえますか?
ruby-on-rails-3 - Ransack Gem Rails 3 から検索パラメータを取得する
Rails3 用の Ransack Search Gem を使用しています。ユーザーが検索ボックスに入力した検索パラメータを取得する方法はありますか?
必要に応じて、私の見解で利用できるようにしたいと思います。
ありがとう!
ruby-on-rails - RoR ランサック検索の問題
奨学金モデルを調べる 2 つの異なるコントローラー (scholarships_controller、scholarships_browse_controller) があります。Ransack 検索機能で、現在のページに検索結果を表示したいと考えています。したがって、たとえば、/scholarships_browse で検索機能を使用する場合、scholarships_browse_controller を使用して /scholarships_browse に結果を表示する必要があります。
現在、/scholarships_browse で検索すると、scholarships_controller が使用され、/scholarships にリダイレクトされて結果が表示されます (/scholarships_browse ではなく)。
ScholarshipsBrowseController および ScholarshipsController のコード
終わり
奨学金のコードは index.html.erb を参照してください:
したがって、具体的には、 /scholarships_browse を使用しているときに ScholarshipsController インデックスの代わりに ScholarshipsBrowseController インデックスを使用していることを確認するにはどうすればよいかを尋ねていると思います。
ruby-on-rails - ロケールファイルなしでI18n属性をRansackで動作させる方法は?
データベースの検索にRails3.2とRansack0.7を使用していますが、モデルの属性の表示名に問題がありました。ビューの属性フィールドは、標準条件フィールドで呼び出されます。
モデルでは、私の属性フィールドは次のように定義されています。
ここで、「username」という属性があり、ビューでは「Username」と表示されるとします。翻訳したい場合は、翻訳を標準のロケールファイルに入れる必要があります。これは、英語版の場合はen.yml、ドイツ語版の場合はde.ymlになります。
ここに問題があります:
このソリューションは、モデルとその属性を知っている限り、正常に機能します。しかし、私は非常に複雑なアプリケーションを持っています。これにより、ユーザーは独自のMVC(モデル、ビュー、コントローラー)を作成し、それを使用して独自の翻訳を作成できます。ユーザーが作成したMVCのRansack検索フォームに表示される名前を除いて、これはすべての場合に正常に機能します。
したがって、考えられる解決策は次のとおりです。
1)ユーザーが新しいMVCを作成するたび、および属性の翻訳の1つを変更するたびに、ロケールファイルを更新する方法を見つけました。
2)ロケールファイルをバイパスして、RansackまたはRailsに属性の正しい名前を直接伝えます。
いずれにせよ、私はこれを行う方法を見つけられなかったので、誰かが解決策を持っているなら、私は本当にそれをいただければ幸いです。他の解決策も歓迎されます。
よろしくお願いします!
ruby-on-rails-3.2 - ランサックと名前空間のルート...テンプレートがありません
何かを検索すると、常にエラーが発生します。
{:locale=>[:en]、:formats=>[:html]、:handlers=>[:erb、:builder、:coffee]} のテンプレート backstage/users/search、application/search がありません。検索場所: * "C:/RailsApps/novaxones/app/views"
アプリ/モデルにユーザーモデルがあります
そしてcontrollers/backstage/users_controller.rbのコントローラー
そしてroutes.rbファイルは
ご覧のとおり、名前空間付きルートを使用して管理パネル (backstage と呼ばれます) を作成しています。
index.html.erbは_
私はおそらく何かを見逃しているか誤解していますが、それを解決する方法が見つかりません... ここでいくつかの助けと説明が必要です. 前もって感謝します 乾杯
編集して解決
問題はコントローラーの検索アクションにありました
から変更する
に
そして、今はすべて順調です。
スコープにも追加する必要がありました。コントローラーでアクティブなスコープに興味がある人のために、コードは次のようになります。
ユーザーモデルでは以下のように定義されています
これが他の誰かに役立つことを願っています
乾杯