So just do this:
<?php
class Resource extends DataObject
{
static $db = array (
'Name' => 'Text',
'Description' => 'Text',
'Category' => "Enum('Industry, Finance, Education')",
);
static $has_one = array (
'File1' => 'File',
'File2' => 'File',
'File3' => 'File',
'ResourcePage' => 'ResourcePage'
);
public function getCMSFields_forPopup()
{
return new FieldSet(
new TextField('Name'),
new TextareaField('Description'),
new DropdownField('Category','Category', singleton('Resource')->dbObject('Category')->enumValues()),
new FileUploadField('File1'),
new FileUploadField('File2'),
new FileUploadField('File3')
);
}
}
?>
==================================
and this is the ResourcePage.php
<?php
class ResourcePage extends Page
{
static $has_many = array (
'Resources' => 'Resource'
);
public function getCMSFields()
{
$f = parent::getCMSFields();
$manager = new DataObjectManager(
$this, // Controller
'Resources', // Source name
'Resource', // Source class
array(
'Name' => 'Name',
'Description' => 'Description',
'Category' => 'Category',
'File1.Name' => 'File1',
'File2.Name' => 'File2',
'File3.Name' => 'File3',
), // Headings
'getCMSFields_forPopup' // Detail fields (function name or FieldSet object)
);
$f->addFieldToTab("Root.Content.Resources", $manager);
return $f;
}
}
class ResourcePage_Controller extends Page_Controller
{
}