wiki:development/NewRequestHandler

New Request Handler

SilverStripe? 2.3 will include a massively re-vamped URL parser

STATUS: This is currently part of the roa branch and will be merged back in shortly.

Example

Consider the URL: admin/EditForm/fields/MyCTFField/item/36/edit

The URL handling is handled by different objects:

  • "admin/" is recognised as pointing to CMSMain
  • "EditForm/?" is recognised as being a method on CMSMain that returns a form
  • "fields/MyCTFField/" is handled by that form object; it is recognised as being a reference to a named field on that form.
  • "item/36" is handled by the named field - a ComplexTableField? - and is recognised as being a refernce to a particular record on the table. It creates a little "record handler" class that has edit and add urls
  • "edit" is a method on that little record handler that returns an editor form for record #36 of the complex table field the the CMS EditForm?.

Implementation

to come

Usage

to come