2012-07-10 17:01:35 +02:00
|
|
|
has_many Example
|
|
|
|
=================
|
2012-10-10 15:40:53 +02:00
|
|
|
```php
|
|
|
|
/*** TestPage.php ***/
|
2017-09-11 16:37:22 +02:00
|
|
|
use SilverStripe\Forms\GridField\GridField;
|
|
|
|
use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor;
|
|
|
|
use UndefinedOffset\SortableGridField\Forms\GridFieldSortableRows;
|
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
class TestPage extends Page {
|
2017-07-04 15:58:25 +02:00
|
|
|
private static $has_many=array(
|
2012-10-10 15:40:53 +02:00
|
|
|
'TestObjects'=>'TestObject'
|
|
|
|
);
|
2017-09-11 16:37:22 +02:00
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
public function getCMSFields() {
|
|
|
|
$fields=parent::getCMSFields();
|
2017-09-11 16:37:22 +02:00
|
|
|
|
|
|
|
$conf=GridFieldConfig_RecordEditor::create(10);
|
2012-10-10 15:40:53 +02:00
|
|
|
$conf->addComponent(new GridFieldSortableRows('SortOrder'));
|
2017-09-11 16:37:22 +02:00
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
$fields->addFieldToTab('Root.TestObjects', new GridField('TestObjects', 'TestObjects', $this->TestObjects(), $conf));
|
2017-09-11 16:37:22 +02:00
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
return $fields;
|
2012-07-10 17:00:06 +02:00
|
|
|
}
|
2012-10-10 15:40:53 +02:00
|
|
|
}
|
2012-07-10 17:00:06 +02:00
|
|
|
|
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
/*** TestObject.php ***/
|
2017-09-11 16:37:22 +02:00
|
|
|
use SilverStripe\ORM\DataObject;
|
|
|
|
|
2012-10-10 15:40:53 +02:00
|
|
|
class TestObject extends DataObject {
|
2017-07-04 15:58:25 +02:00
|
|
|
private static $db=array(
|
2012-10-10 15:40:53 +02:00
|
|
|
'Title'=>'Text',
|
|
|
|
'SortOrder'=>'Int'
|
|
|
|
);
|
2017-09-11 16:37:22 +02:00
|
|
|
|
2017-07-04 15:58:25 +02:00
|
|
|
private static $has_one=array(
|
2014-01-27 22:04:32 +01:00
|
|
|
'Parent'=>'TestPage'
|
2014-01-27 19:45:11 +01:00
|
|
|
);
|
2017-09-11 16:37:22 +02:00
|
|
|
|
2017-07-04 15:58:25 +02:00
|
|
|
private static $default_sort='SortOrder';
|
2012-10-10 15:40:53 +02:00
|
|
|
}
|
2017-09-11 16:37:22 +02:00
|
|
|
```
|