• Getting Started
  • Developer Guides
    • Model and Databases
    • Templates and Views
    • Controllers
    • Forms
      • Introduction to Forms
      • Form Validation
      • Form Templates
      • Form Security
      • Form Transformations
      • Tabbed Forms
      • Using GridField with Arbitrary Data
      • Field Types
      • How To's
        • How to Encapsulate Forms
        • How to Create Lightweight Form
        • Create a GridField Component
        • How to add a custom action to a GridField row
        • Simple contact form
        • How to handle nested data in forms
    • Configuration
    • Extending Silverstripe CMS
    • Testing
    • Debugging
    • Performance
    • Security
    • Email
    • Integration and Web Services
    • Search
    • i18n
    • Files
    • Customising the Admin Interface
    • Execution pipeline
    • Command Line Interface (CLI)
    • Cookies and Sessions
    • Deprecating code
  • Optional features
  • Upgrading
  • Changelogs
  • Contributing
  • Project Governance
  1. Developer Guides
  2. Forms
  3. How To's
Version 6Supported

How to's: forms#

How to Encapsulate Forms

Learn how to move a form from a controller into its own class definition.

How to Create Lightweight Form

Create a simple search form with Silverstripe CMS

Create a GridField Component

Customise your GridField with a variety of add-ons.

How to add a custom action to a GridField row

Handle custom actions on your GridField

Simple contact form

Create a form that submits a message via email

How to handle nested data in forms

Forms can save into arrays, including has_one relations

Edit on GitHub