'VarChar' ,'Categories' => 'MultiValueField' ); private static $has_many = array( 'SortableObjects' => 'SortableObject' ); public function getCMSFields() { $fields = parent::getCMSFields(); $config = GridFieldConfig_RelationEditor::create(); $config->addComponent(new GridFieldSortableRows('SortOrder')); $config->addComponent(new GridFieldBulkImageUpload()); $config->addComponent(new GridFieldGalleryTheme('ObjectImage')); $objectTable = new GridField('SortableObjects', 'Sortable Objects', $this->SortableObjects(), $config); $fields->addFieldToTab('Root.Main', $objectTable, 'Metadata'); $fields->addFieldToTab('Root.Main', new TextField('Subtitle'), 'Content'); $fields->addFieldToTab('Root.Main', new MultiValueTextField('Categories'), 'Metadata'); return $fields; } } class SortableObjectSection_Controller extends Page_Controller {}