Rails 3 meta_search sort_link и pagination - PullRequest
0 голосов
/ 26 марта 2012

Хотите знать, знает ли кто-нибудь, как заставить sort_link meta_search работать с will_paginate?

ссылки will_paginate сохраняют параметры поиска / сортировки meta_search, а sort_link - нет: (

Ответы [ 2 ]

2 голосов
/ 04 мая 2012

Я так и сделал.У меня есть модель задач с атрибутами имени и крайнего срока.

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.

0 голосов
/ 26 марта 2012

Этот запрос на получение может быть тем, что вы ищете, к сожалению, он еще не объединен.

Если вы хотите использовать отдельный гем для сортировки ссылок, гем sorted создан для предоставления именно той функциональности, которую вы ищете - сортировка столбцов при сохранении состояния через нумерацию страниц.

https://github.com/mynameisrufus/sorted

...