我想在编辑页面视图的现有标签“设置”中添加一个字段(在屏幕截图中标记)。
我试过了:
$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
但它只是在辅助标签“主要内容”旁边添加了一个新标签,其中包含附加字段。
答案 0 :(得分:18)
对于SilverStripe 3.0,您需要覆盖模型中的getSettingsFields()函数,例如
function getSettingsFields() {
$fields = parent::getSettingsFields();
$fields->addFieldToTab("Root.Settings", new TextField('Intro'));
return $fields;
}
在SilverStripe 2.x中,这是在getCMSFields()函数中完成的。
答案 1 :(得分:2)
这种方法对我有用:
public function updateSettingsFields(FieldList $fields) {
$fields->addFieldToTab("Root.MyNewSettingsSubTab", new TextField('Intro'));
return $fields;
}