0

私の場合、paramsとのリンクがあり、paramsで選択します

リンクで使用したため@posts、selectでフィルタリングしてから params でフィルタリングすると、すべて問題ありません(:per_page)(:pub)params.merge

しかし、最初のリンクを使用してから選択したい場合、選択のどこに書き込むべきかわからないため、機能しませんparams.merge

私のコントローラーからのコード:

 def index
    @posts = Post
    @posts = @posts.published unless params[:pub]
    @posts = @posts.where(:published => params[:pub]) if params[:pub]
    @posts = @posts.page(params[:page]).per(params[:per_page] || 5)
  end

ビューからのコード

<%= select_tag :per_page, options_for_select(%w(1 2 3), params[:per_page].to_i), :onchange => "if(this.value){window.location='?per_page='+this.value;}" %>

<%= link_to "unpubl", params.merge(:pub => :f) %>
<%= link_to "publ", params.merge(:pub => :t) %>
4

1 に答える 1