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:

IDTitleDescriptionArchived Due Date
1-20 / 500 Alle rijen tonen
22etReiciendis non officia aut omnis quia minima.No28 AugEdit
1impedit aperiam liberoEst necessitatibus tempora ut.No27 JulEdit
21et rerum laborumVelit consequatur quas sunt perspiciatis quae nihil.No29 AprEdit
2ut sintAssumenda ut in commodi nihil ratione odio voluptatibus ea.No21 OctEdit
3aliquam repudiandaeConsequatur iste similique dolorum ducimus ut.No20 AprEdit
7ut veniamMolestiae qui qui quo occaecati.No 4 AugEdit
8nullaNatus sint inventore culpa fugiat occaecati est distinctio.No22 MayEdit
4nisi quiQuas assumenda eos molestiae recusandae eveniet sit sint.No16 MayEdit
10rerum occaecatiCum aperiam voluptas aut.No14 AugEdit
5dicta pariaturCorporis iure repellat fuga omnis alias iusto aut voluptatum.No 4 MarEdit
12explicabo hicPorro in nisi ea sunt consequatur est incidunt et.No15 AprEdit
13utEst voluptas impedit perferendis excepturi aliquid doloremque.No18 JulEdit
14repellat consequatur velitError autem et deleniti nihil maxime voluptatem eius eveniet.No10 JanEdit
15est ut autVero distinctio voluptatem veritatis.No30 OctEdit
16omnisPossimus voluptas tempore sed mollitia neque vero nesciunt.No 5 FebEdit
17itaque suscipit commodiEt ut eveniet deleniti voluptatem omnis ea magnam et.No23 AugEdit
18necessitatibus commodiLabore dolor et cumque quos.No28 MarEdit
9quisquam in isteEt fugiat blanditiis facilis asperiores et.No 7 MarEdit
20aspernatur eligendi adipisciMaiores perspiciatis tempore et aut sapiente eaque.No 8 JunEdit
23exercitationem autVoluptatum aut earum at est deserunt.No21 MayEdit

Fork me on GitHub