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:

IDTitle DescriptionArchivedDue Date
461-480 / 500 show all
500vel eaEt a ut cum eos sed.Yes30 MarEdit
237vel esseDistinctio accusamus et dolores aliquam repudiandae omnis.No10 OctEdit
281velitDolorum quaerat asperiores itaque quibusdam libero aspernatur sed eius.No14 FebEdit
186velit dignissimosQuia et molestias quidem sit minus.No 1 JulEdit
75velit non magniTotam dolor est sint et sed.No16 SepEdit
496velit non pariaturQuia possimus rerum eum architecto.Yes 6 SepEdit
392velit vitaeVero tenetur ex et totam nam natus aperiam doloremque.No27 AugEdit
382vel nostrumMaiores officiis sequi aut at quia.No19 JulEdit
273veroMinima eum dicta odio a quod odit rerum.Yes13 JunEdit
379vero repellatUt sed id deserunt.Yes31 MarEdit
220vero rerumEt aliquid id sed et.No31 MarEdit
66vitae at autemNihil quae dolores quia ut non.No16 JunEdit
176vitae ducimus consequunturDolores tenetur consequatur nihil minima id delectus consequatur et.No25 MayEdit
169vitae oditLaborum laboriosam odio cum ex.No26 JunEdit
431vitae repudiandaeAliquid nihil aliquam architecto eos delectus placeat.No21 MayEdit
222voluptasAnimi odio ad et nisi quod perferendis natus possimus.No17 JanEdit
290voluptasIste aut occaecati quo voluptates facere consequatur.No15 JanEdit
330voluptasSit qui aut nesciunt ut excepturi debitis id.No15 JulEdit
201voluptasEt ut autem at ex voluptatibus assumenda.No27 MayEdit
128voluptasEst cum porro et et.No31 MayEdit

Fork me on GitHub