【发布时间】:2012-03-26 03:38:54
【问题描述】:
想知道是否有人知道如何让 meta_search 的 sort_link 与 will_paginate 一起使用?
will_paginate 链接保留 meta_search 的搜索/排序参数,但 sort_link 没有:(
【问题讨论】:
标签: ruby-on-rails will-paginate meta-search
想知道是否有人知道如何让 meta_search 的 sort_link 与 will_paginate 一起使用?
will_paginate 链接保留 meta_search 的搜索/排序参数,但 sort_link 没有:(
【问题讨论】:
标签: ruby-on-rails will-paginate meta-search
我就是这样做的。我有一个具有名称和截止日期属性的任务模型。
index.html.haml
= search_form_for @q do |f|
= f.text_field :name_cont
= f.submit t(:search)
%table.table
%thead
%tr
%th= sort_link @q, :name, t(:task), {page: params[:page]}
%th= sort_link @q, :deadline, t(:deadline), {page: params[:page]}
%th= sort_link @q, :created_at, t(:created_at), {page: params[:page]}
%th= t(:action)
%tbody
- @tasks.each do |task|
%td= task.name
%td= task.deadline
%td= task.created_at
%td
= link_to t(:edit), edit_task_path(task)
= link_to t(:delete), task, :confirm => t(:delete_question), :method => :delete
= will_paginate @tasks
如您所见,我在单击“sort_link”时发送页面参数。
*tasks_controller.rb*
def index
@q = Task.search(params[:q])
@tasks = @q.result.paginate(:page => params[:page], :per_page => 10)
end
希望对你有帮助。
PS:我使用的是Ransack,而不是 MetaSearch。
【讨论】:
这个pull request 可能是您正在寻找的,不幸的是它还没有被合并。
如果您愿意使用单独的 gem 对链接进行排序,sorted gem 的构建正是为了提供您正在寻找的功能——在跨分页保存状态的同时对列进行排序。
【讨论】: