silverstripe-framework/docs/en/02_Developer_Guides/03_Forms/How_Tos/03_Create_a_GridFieldComponent.md
Aaron Carlino 6888901468
NEW: Update docs to be compliant with Gatsby site (#9314)
* First cut

* Temporarily disable composer.json for netlify build

* POC

* New recursive directory query, various refinements

* Fix flexbox

* new styled components plugin

* Apply frontmatter delimiters

* Mobile styles, animation

* Search

* Redesign, clean up

* Nuke the cache, try again

* fix file casing

* Remove production env file

* ID headers

* Move app to new repo

* Add frontmatter universally

* Hide children changelogs

* Add how to title

* New callout tags

* Revert inline code block change

* Replace note callouts

* Fix icons

* Repalce images

* Fix icon

* Fix image links

* Use proper SQL icon
2019-11-18 17:58:33 +13:00

1.7 KiB

title summary icon
Create a GridField Component Customise your GridField with a variety of add-ons. table

A single component often uses a number of interfaces.

GridField_HTMLProvider

Provides HTML for the header/footer rows in the table or before/after the template.

Examples:

  • A header html provider displays a header before the table
  • A pagination html provider displays pagination controls under the table
  • A filter html fields displays filter fields on top of the table
  • A summary html field displays sums of a field at the bottom of the table

GridField_ColumnProvider

Add a new column to the table display body, or modify existing columns. Used once per record/row.

Examples:

  • A data columns provider that displays data from the list in rows and columns.
  • A delete button column provider that adds a delete button at the end of the row

GridField_ActionProvider

Action providers runs actions, some examples are:

  • A delete action provider that deletes a DataObject.
  • An export action provider that will export the current list to a CSV file.

GridField_DataManipulator

Modifies the data list. In general, the data manipulator will make use of GridState variables to decide how to modify the data list.

Examples:

  • A paginating data manipulator can apply a limit to a list (show only 20 records)
  • A sorting data manipulator can sort the Title in a descending order.

GridField_URLHandler

Sometimes an action isn't enough, we need to provide additional support URLs for the grid. It has a list of URL's that it can handle and the GridField passes request on to URLHandlers on matches.

Examples:

  • A pop-up form for editing a record's details.
  • JSON formatted data used for javascript control of the gridfield.