2010-12-28 7 views

Antwort

9

Sie auch datagrid Juwel versuchen. Das konzentriert sich nicht nur auf Gitter mit Spalten, sondern auch auf Filter.

class SimpleReport 

    include Datagrid 

    scope do 
    User.includes(:group) 
    end 

    filter(:category, :enum, :select => ["first", "second"]) 
    filter(:disabled, :eboolean) 
    filter(:confirmed, :boolean) 
    filter(:group_id, :integer, :multiple => true) 
    integer_range_filter(:logins_count, :integer) 
    filter(:group_name, :string, :header => "Group") do |value| 
    self.joins(:group).where(:groups => {:name => value}) 
    end 


    column(:name) 
    column(:group, :order => "groups.name") do |user| 
    user.name 
    end 
    column(:active, :header => "Activated") do |user| 
    !user.disabled 
    end 
end 
0

Wenn Sie Dinge wie Paginierung, Bestellung, Sortierung usw. suchen, dann macht Rails all dies automatisch.

Wenn Sie beispielsweise alle Zeilen nach einer bestimmten Spalte sortieren möchten, könnte der Titel dieser Spalte einfach ein Link sein, der die Ergebnisse nach dieser Spalte sortiert und dann das Raster erneut darstellt.

Wenn Sie also ein Datengrid erstellen möchten, das nicht AJAXy ist, dann ist das ziemlich einfach. Wenn Sie nach einer Möglichkeit suchen, dies mit XHR-Anforderungen zu tun, können Sie jQuery verwenden, um Anforderungen im Hintergrund zu stellen.

Als ein Juwel, das all das automatisch macht, konnte ich keinen finden, aber ich kann nicht sehen, warum Sie es einfach nicht selbst machen konnten mit den Grundlagen, die Schienen zur Verfügung stellt.

2

Wenn Sie sich für einen leistungsfähigen Client-Seite Raster, unterstützt Paginierung, Sortieren, Gruppieren, Bearbeitung, Export in Excel, PDF, etc, können Sie sich Schild UI Grid-Komponente überprüfen.

Here's a tutorial wie Sie es in Rails integrieren.