WiceGrid 3.6.0.pre4 examples

External filters

Filters can also be detached from the grid table. This is a 3-step process.

  1. First, define the grid with helper define_grid instead of grid . Everything should be done the same way as with grid, but every column which will have an external filter, add detach_with_id: :some_filter_name in the column definition.
  2. Then use grid_filter(grid, :some_filter_name) to render filters.
  3. Finally, use render_grid(@grid) to actually output the grid table .
  • # encoding: utf-8
    class DetachedFiltersController < ApplicationController
      def index
        @tasks_grid = initialize_grid(Task)
      end
    end
    
  • .well
      %h2= current_page_title
      %p
        Filters can also be detached from the grid table. This is a 3-step process.
    
      %ol
        %li
          First, define the grid with helper
          %code define_grid
          instead of
          %code grid
          \. Everything should be done the same way as with
          %code grid, but every column which will have an external filter, add
          %code detach_with_id: :some_filter_name
          in the
          %code column
          definition.
    
        %li
          Then use
          %code grid_filter(grid, :some_filter_name)
          to render filters.
    
        %li
          Finally, use
          %code render_grid(@grid)
          to actually output the grid table
          \.
    
    = show_code
    
    = render   'grid'
    
    
    .row
      .col-md-2
        ID:
      .col-md-10
        = grid_filter @tasks_grid, :id_filter
    
    .row
      .col-md-2
        Title:
      .col-md-3
        = grid_filter @tasks_grid, :title_filter
      .col-md-7
    
    
    .row
      .col-md-2
        Description:
      .col-md-3
        = grid_filter @tasks_grid, :description_filter
      .col-md-7
    
    .row
      .col-md-2
        Archived:
      .col-md-10
        = grid_filter @tasks_grid, :archived_filter
    
    
    .row
      .col-md-2
        Due date:
      .col-md-10
        = grid_filter @tasks_grid, :due_date
    
    
    .row-fluid
      .col-md-12
        .external-buttons
          %button.btn.btn-primary.wg-external-submit-button{'data-grid-name' => 'grid'} Submit
          %button.btn.btn-default.wg-external-reset-button{'data-grid-name' => 'grid'} Reset
    
    .row-fluid
      .col-md-12
    
        = render_grid(@tasks_grid)
    
  • <%= define_grid(@tasks_grid, hide_submit_button: true, hide_reset_button: true) do |g|
    
      g.column name:  'ID', attribute: 'id', detach_with_id: :id_filter
    
      g.column name:  'Title', attribute: 'title', detach_with_id: :title_filter
    
      g.column  name:  'Description', attribute: 'description', detach_with_id: :description_filter
    
      g.column  name:  'Archived', attribute: 'archived', detach_with_id: :archived_filter do |task|
        task.archived? ? 'Yes' : 'No'
      end
    
    
      g.column name:  'Due Date', attribute: 'due_date', detach_with_id: :due_date do |task|
        task.due_date.to_s(:short)
      end
    
    
      g.column   do |task|
        link_to('Edit', edit_task_path(task))
      end
    
    end -%>
    
ID:
Title:
Description:
Archived:
Due date:

IDTitleDescriptionArchivedDue Date
81-100 / 500 show all
81ad quo dolorTempora culpa laborum et illum suscipit facilis earum et.No18 MayEdit
82utEt debitis enim repellat qui voluptatem a nam nisi.No12 JanEdit
83enimUt molestias ducimus dignissimos.No14 OctEdit
84doloreOdio laboriosam velit pariatur ea autem distinctio.No28 MayEdit
85voluptatibus inventoreHarum aliquam amet et inventore.Yes 3 JunEdit
86adipisciConsectetur optio rerum facilis explicabo enim consequatur delectus iste.No 7 FebEdit
87nostrumTempore ad qui velit nihil ipsam.No31 MarEdit
88culpaOccaecati aut eum vero quasi dolorem.No19 OctEdit
89provident consequatur remSint at soluta earum.No20 AugEdit
90commodi et quisConsequatur soluta eligendi et consequatur.No30 MayEdit
91quaeratFacere ullam veniam inventore ea.No17 JunEdit
92est praesentiumModi pariatur voluptatem perspiciatis.No19 JanEdit
93autId vero doloremque animi unde.No20 SepEdit
94officiisIllum minus rerum expedita.No 1 FebEdit
95quibusdam beatae adVoluptas aperiam beatae architecto provident cum.Yes 6 MarEdit
96impedit explicabo voluptatemHic eveniet pariatur non nostrum.No25 OctEdit
97voluptatem facilis etIncidunt dolorem molestias deserunt repellat vero aut.No26 MayEdit
98aperiam rerumRerum quaerat eligendi voluptatem.Yes19 JulEdit
99solutaOfficiis omnis esse est debitis laboriosam.No12 OctEdit
100autem nonMinus autem provident ex culpa sit.No 4 AugEdit

Fork me on GitHub