1

かなりの試行錯誤の後、SaaS クラスからもう 1 つ。(ボックスをチェックすることによって) フィルタリングしたり、(theader をクリックすることによって) 評価によって並べ替えたりできる映画のテーブルがあります。フィルター処理された場合、その後の並べ替えではフィルターを保持する必要があります。

「link_to」によってトリガーされるリクエストには、_path() に「ratings」パラメーターを含める必要があると思います。これにより、コントローラーはクエリを実行し、それに応じて表示するために送信できます。

そうであれば、movies_path() で check_box_tag 値を取得するにはどうすればよいですか? そうでない場合、他に何をすべきですか?前もって感謝します!

%h1 All Movies
=puts 'Ratings: ', params[:ratings].nil?
= form_tag movies_path, :id => 'ratings_form', :method => :get do
  Include:
  - @all_ratings.each do |rating|
    = rating
    = check_box_tag "ratings[#{rating}]", 1, @filtered_ratings.include?(rating) ? true : false
  = submit_tag 'Refresh', :id => 'ratings_submit'

%table#movies
  %thead
    %tr
      %th{:class => @title_header}= link_to "Movie Title", movies_path(:sort => "title"), :id => 'title_header'
      %th Rating
      %th{:class => @date_header}= link_to "Release Date", movies_path(:sort => "release_date"), :id=> 'release_date_header'
      %th More Info
  %tbody
4

1 に答える 1

1

そこでparams[]、_path()に要素を追加するだけで、これらが。で区切られたURLに表示されることを学びました?。これが他の初心者の仲間にも役立つことを願っています。

  %thead
    %tr
      %th{:class => @title_header}= link_to "Movie Title", movies_path(:sort => "title", :ratings => params[:ratings]), :id => 'title_header'
      %th Rating
      %th{:class => @date_header}= link_to "Release Date", movies_path(:sort => "release_date", :ratings => params[:ratings]), :id=> 'release_date_header'
      %th More Info
  %tbody
于 2013-01-31T04:59:39.840 に答える