1

Rails3.2でドロップダウンフィルターを作成しようとしています。

私はこれらの線に沿って解決策を見てきましたが、私の場合、それらを実装する方法がわかりません。 ドロップダウンからインデックスページの結果をフィルタリングします

のテーブルがeventsあり、これらのイベントをでフィルタリングするためのドロップダウンボックスが必要categoryです。paramsを使用して、ビューのこれらの線に沿って何かを実行することで、途中まで進んでいます。

<% @event.events_by_category(sanitize_output(params[:cat])).each do |e| %>
  ...
<% end %>

そして、eventモデルで以下を使用します。

def self.events_by_category(cat)
  if cat == nil
    all
  else
    where("category = ?", cat)
  end
end

ただし、URLを更新してjQueryにパラメータを含めるドロップダウンを作成するのは非常に汚いようです。

Railsでこのタイプのドロップダウンを実行するための最良の方法は何ですか?

4

1 に答える 1

1

次のように、選択ボックスのフォームタグを使用するだけで、適切な解決策が見つかりました。

<%= form_tag events_path, method: 'get' do %>
  <%= select_tag :cat, Options::TYPE %>
  <%= submit_tag 'Filter %>
<% end %>
于 2012-12-10T22:01:26.393 に答える