10

我想在编辑页面视图的现有选项卡“设置”中添加一个字段(在屏幕截图中标记)。

我试过这个:

$fields->addFieldToTab('Root.Settings', new TextField('Intro'));

但它只是在包含附加字段的辅助选项卡“主要内容”旁边添加了一个新选项卡。

Silverstripe Edid 页面视图

4

2 回答 2

18

对于 SilverStripe 3.0,您需要覆盖模型中的getSettingsFields()函数,例如

function getSettingsFields() {
    $fields = parent::getSettingsFields();
    $fields->addFieldToTab("Root.Settings", new TextField('Intro'));
    return $fields;
}

在 SilverStripe 2.x 中,这是在 getCMSFields() 函数中完成的。

于 2012-08-15T10:34:14.770 回答
2

这种方法对我有用:

public function updateSettingsFields(FieldList $fields) {
  $fields->addFieldToTab("Root.MyNewSettingsSubTab", new TextField('Intro'));
  return $fields;
}
于 2012-10-25T03:13:16.737 回答