MINOR: better example

This commit is contained in:
Nicolaas 2020-05-30 13:16:11 +12:00 committed by GitHub
parent 74756cad52
commit f1a9c92784
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 31 additions and 18 deletions

View File

@ -2,28 +2,38 @@ has_many Example
================= =================
```php ```php
<?php
/*** TestPage.php ***/ /*** TestPage.php ***/
use SilverStripe\Forms\GridField\GridField; use SilverStripe\Forms\GridField\GridField;
use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor; use SilverStripe\Forms\GridField\GridFieldConfig_RelationEditor;
use UndefinedOffset\SortableGridField\Forms\GridFieldSortableRows; use UndefinedOffset\SortableGridField\Forms\GridFieldSortableRows;
class TestPage extends Page class TestPage extends Page
{ {
private static $has_many = [ private static $has_many = [
'TestObjects' => 'TestObject', 'TestObjects' => 'TestObject',
]; ];
public function getCMSFields() public function getCMSFields()
{ {
$fields = parent::getCMSFields(); $fields = parent::getCMSFields();
$conf = GridFieldConfig_RecordEditor::create(10); $conf = GridFieldConfig_RelationEditor::create(10);
$conf->addComponent(new GridFieldSortableRows('SortOrder')); $conf->addComponent(new GridFieldSortableRows('SortOrder'));
$fields->addFieldToTab('Root.TestObjects', new GridField('TestObjects', 'TestObjects', $this->TestObjects(), $conf)); $fields->addFieldToTab(
'Root.TestObjects',
GridField::create(
'TestObjects',
'TestObjects',
$this->TestObjects(),
$conf
)
);
return $fields; return $fields;
} }
} }
@ -32,15 +42,18 @@ use SilverStripe\ORM\DataObject;
class TestObject extends DataObject class TestObject extends DataObject
{ {
private static $db = [ private static $db = [
'Title' => 'Text', 'Title' => 'Text',
'SortOrder' => 'Int', 'SortOrder' => 'Int',
]; ];
private static $indexes = [
'SortOrder' => true,
];
private static $has_one = [ private static $has_one = [
'Parent' => 'TestPage', 'Parent' => 'TestPage',
]; ];
private static $default_sort = 'SortOrder'; private static $default_sort = 'SortOrder';
} }
``` ```