sortablegridfield/docs/HasManyExample.md
Daniel Hensby d8c379879f Merge 1.0.x into master (#112)
* Fixed travis build failure related to phpunit/php-file-iterator

* DOCS Update docs examples to be 3.1+ relevant (#111)
2017-11-29 10:05:37 -04:00

969 B

has_many Example

/*** TestPage.php ***/
use SilverStripe\Forms\GridField\GridField;
use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor;
use UndefinedOffset\SortableGridField\Forms\GridFieldSortableRows;

class TestPage extends Page
{
	private static $has_many = [
		'TestObjects' => 'TestObject',
	];

	public function getCMSFields()
	{
		$fields = parent::getCMSFields();
		
		$conf = GridFieldConfig_RecordEditor::create(10);
		$conf->addComponent(new GridFieldSortableRows('SortOrder'));

		$fields->addFieldToTab('Root.TestObjects', new GridField('TestObjects', 'TestObjects', $this->TestObjects(), $conf));

		return $fields;
	}
}


/*** TestObject.php ***/
use SilverStripe\ORM\DataObject;

class TestObject extends DataObject
{
	private static $db = [
		'Title' => 'Text',
		'SortOrder' => 'Int',
	];

    private static $has_one = [
        'Parent' => 'TestPage',
    ];

	private static $default_sort = 'SortOrder';
}