Never been to ShareSnippets before?

ShareSnippets е публично хранилище за програмен код. Лесно можете да съберете собствена колекция от отрязъци от код, да ги систематизирате с етикети, ключови думи, и да ги споделите (или ако не искате, да ги запазите за себе си!)

Сортиране на данни в таблица по колони (See related posts)

Сортиране на данни в таблица по колони в rubyonrails проект съчетано с will_paginate плъгин. Helper методите в примера работят със стил за промяна на вида - визуализиране на колоната и посоката и на сортиране. Например може да се направи стил с иконка стрелка за посоката на сортиране.

Helpers:
  def sort_th(value)
    result = 'id="sorted_by_asc"' if params[:sort] == value
    result = 'id="sorted_by_desc"' if params[:sort] == value + "_desc"
    return result
  end

  def sort_link(text, action, value)
    key = value
    key += "_desc" if params[:sort] == value
    link_to text, :action => action, :sort => key
  end


Controller:
 def list
    @page = params[:page]
    @sort = params[:sort]
    @results = Model.paginate :page => @page, :per_page => 5, :order => order_value(@sort)
  end


View:
  <tr>
    <th <%=sort_th "name"%>>
      <%=sort_link("Име", "list", "name")%>
    </th>
    <th <%=sort_th "address"%>>
      <%=sort_link("Адрес", "list", "address")%>
    </th>

.....
<%= will_paginate @results, :sort=>@sort %>


You need to create an account or log in to post comments to this site.


Related Posts