我想添加一個字段到編輯頁面視圖的現有選項卡「設置」(在屏幕截圖中標記)。silverstripe 3 addFieldToTab「設置」
我嘗試這樣做:
$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
但它只是增加了旁邊的次級選項卡「主要內容」包含附加字段的新標籤。
我想添加一個字段到編輯頁面視圖的現有選項卡「設置」(在屏幕截圖中標記)。silverstripe 3 addFieldToTab「設置」
我嘗試這樣做:
$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
但它只是增加了旁邊的次級選項卡「主要內容」包含附加字段的新標籤。
對於SilverStripe 3.0,你需要重寫getSettingsFields()功能模型如
function getSettingsFields() {
$fields = parent::getSettingsFields();
$fields->addFieldToTab("Root.Settings", new TextField('Intro'));
return $fields;
}
在SilverStripe 2.x中,這是在getCMSFields()函數中完成的。
此方法爲我工作:
public function updateSettingsFields(FieldList $fields) {
$fields->addFieldToTab("Root.MyNewSettingsSubTab", new TextField('Intro'));
return $fields;
}
值得注意的是,如果通過'''DataExtension'''來執行這個方法,但是如果你通過一個從'''Page'''延伸的類來完成它,那麼第一個答案就是你想要的使用。 – 2016-01-01 20:29:00
爽!工作!謝謝! – spierala 2012-08-15 19:46:36