在我的情况下,我有参数链接并选择参数
如果我@posts
用 select过滤,(:per_page)
然后用(:pub)
params 过滤一切都很好,因为我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) %>