【发布时间】:2014-09-03 14:07:48
【问题描述】:
我想使用 GridField 来查看和创建新的子页面。父级是 DocumentHolder,子级是 Document。两者都扩展了 SiteTree。当我单击“添加文档”(网格生成的按钮)时,填写字段并确认表单,父页面被忽略,页面在根目录下创建。当我使用 DataObject 时效果很好。代码如下所示:
class DocumentHolder extends SiteTree
{
private static $allowed_children = array(
'Document'
);
private static $default_child = "Document";
public function getCMSFields()
{
$fields = parent::getCMSFields();
$gridField = new GridField('Documents', 'Documents', SiteTree::get('Document')->filter('ParentID', $this->ID), GridFieldConfig_RecordEditor::create());
$fields->addFieldToTab("Root.Uploads", $gridField);
return $fields;
}
}
class Document extends SiteTree
{
private static $db = array(
);
private static $has_one = array(
);
}
感谢您的帮助。
【问题讨论】:
标签: silverstripe