同様の質問が1つか2つあるかもしれませんが、次のどこが間違っているのかを理解するのに役立ったものはありませんでした。私の見解では、次のhamlフォームがあります。
= form_tag movies_path,:id=>"ratings_form", :method => :get do
Include:
- @all_ratings.each_with_index do |rating, index|
= rating
= check_box_tag "ratings[]", rating, @selected_ratings.include?(rating), id:"ratings_#{rating}"
そして私のコントローラーでは:
def index
sorting=params[:sorting_on_a_column]
if sorting=='1'
@sort='title'
@movies=Movie.order('title')
elsif sorting=='2'
@sort='date'
@movies=Movie.order('release_date')
else
@movies=Movie.all
end
@all_ratings=Movie.select(:rating).map(&:rating).uniq
@selected_ratings = (params["ratings"].present? ? params["ratings"] : @all_ratings)
@movies = @movies.where(":rating IN (?)", params["ratings"]) if params["ratings"].present? and params["ratings"].any?
end
上記の私の目標は、タイトルまたはrelease_date(それが行う)で映画を並べ替え、チェックボックスに対応する映画のみを表示することです。私はRubyとRailsを初めて使用するので、本当に助けていただければ幸いです。ありがとうございます。前進!