2012-03-26 10 views

Antwort

2

So habe ich es gemacht. Ich habe ein Aufgabenmodell mit Namens- und Terminattributen.

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 

Wie man sehen kann ich die Seite param wenn Klick im 'sort_link' senden.

* tasks_controller.rb *

def index 
    @q = Task.search(params[:q]) 
    @tasks = @q.result.paginate(:page => params[:page], :per_page => 10) 
    end 

Ich hoffe, es hilft.

PS: Ich benutze Ransack anstelle von MetaSearch.

0

Diese pull request könnte das sein, was Sie suchen, leider ist es noch nicht verschmolzen.

Wenn Sie bereit sind, zu verwenden, ein separates Juwel für Links Sortierung wird das sorted Juwel genau die Funktionalität, die Sie for-- Sortier Spalte suchen bieten gebaut, während Zustand über Paginierung zu sparen.

https://github.com/mynameisrufus/sorted