0

現在 Searchkick gem を使用しており、同時に複数のクエリで検索する方法を見つけようとしています。

選択 (ドロップダウン) を使用して検索クエリを事前に定義する必要があります。

現在、私のコントローラーは次のようになっています。

  def index
    @application = Application.search(params[:query])
 end

そして私の見解:

<%= form_tag search_company_path, method: :get do %>
 <p>
  <%= label_tag :query, "Type" %>
  <%= select_tag :query, options_for_select(['Test 1','Test 2','Test 3', 'Test 4',    'Test 5']) %>
  <%= label_tag :query, "On location?" %>
  <%= select_tag :query, options_for_select(['Yes', 'No', 'Either']) %>
  <%= submit_tag "Search", name: nil %>
 </p>
<% end %>

これは、同じ :query で 2 つの select_tags を実行するのに機能しますが、あまり良いコーディングではないと思います。後者の label_tag を作成することもできません。

また、検索を正常に実行すると、select_tag が 1 番目にリセットされます (テスト 1 とはい)。これを修正するにはどうすればよいですか?

4

1 に答える 1

0

Railsでsearchkickを使用すると、同じ問題が発生します。Elasticsearch が公式プロジェクトを公開

https://github.com/elasticsearch/elasticsearch-rails

複数のクエリ文字列メソッドのドキュメントは次のとおりです。elasticsearch-multiple query string elasticsearch-rails のコンパニオン Elasticsearch-model のプロジェクトが役に立ちます。

response = Article.search query:     { bool: { should: [match:  { title: "Fox Dogs" },
                                                        match:  { author: 'Will' }] } },
                          highlight: { fields: { title: {} } }
于 2014-11-13T08:33:50.893 に答える