silverstripe 3 addFieldToTab“设置”
Posted
技术标签:
【中文标题】silverstripe 3 addFieldToTab“设置”【英文标题】:silverstripe 3 addFieldToTab "Settings" 【发布时间】:2012-08-11 14:55:09 【问题描述】:我想在编辑页面视图的现有选项卡“设置”中添加一个字段(在屏幕截图中标记)。
我试过这个:
$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
但它只是在包含附加字段的辅助选项卡“主要内容”旁边添加了一个新选项卡。
【问题讨论】:
【参考方案1】:对于 SilverStripe 3.0,您需要覆盖模型中的 getSettingsFields() 函数,例如
function getSettingsFields()
$fields = parent::getSettingsFields();
$fields->addFieldToTab("Root.Settings", new TextField('Intro'));
return $fields;
在 SilverStripe 2.x 中,这是在 getCMSFields() 函数中完成的。
【讨论】:
【参考方案2】:这个方法对我有用:
public function updateSettingsFields(FieldList $fields)
$fields->addFieldToTab("Root.MyNewSettingsSubTab", new TextField('Intro'));
return $fields;
【讨论】:
值得注意的是,如果通过DataExtension
进行操作,您将使用此方法,但是如果您通过从Page
扩展的类进行操作,第一个答案就是您要使用的.以上是关于silverstripe 3 addFieldToTab“设置”的主要内容,如果未能解决你的问题,请参考以下文章
Silverstripe 3.2:如何在前端表单中动态添加和更新数据对象?
是否可以在 SilverStripe 菜单中获取 Children of children?