我正在使用Silverstripe中的自定义页面,尽管这是绝对基本的,但我仍然无法完成它。
我创建了FundraisingPage(下面的代码)并将新页面设置为筹款页面。然后我为字段和getCMSFields包含了数组。我重新构建了数据库并刷新了缓存,但它没有向我显示后端的字段。
感谢您的帮助。 亚历
<?php
class FundraisingPage extends Page {
private static $db = array(
'fr_video_url' => 'Text',
'fr_form_url' => 'Text',
'fr_meter_url' => 'Text',
'fr_meter_url_employers' => 'Text',
'fr_meter_url_classes' => 'Text',
);
public function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldToTab('Root.Links', new TextField('fr_video_url', 'Video URL'), 'Content');
$fields->addFieldToTab('Root.Links', new TextField('fr_form_url', 'Form URL'), 'Content');
$fields->addFieldToTab('Root.Links', new TextField('fr_meter_url', 'Meter URL'), 'Content');
$fields->addFieldToTab('Root.Links', new TextField('fr_meter_url_employers','Meter URL by employer'), 'Content');
$fields->addFieldToTab('Root.Links', new TextField('fr_meter_url_classes', 'Meter URL by classes'), 'Content');
return $fields;
}
}
class FundraisingPage_Controller extends Page_Controller {
}
答案 0 :(得分:1)
只需删除&#34;,&#39;内容&#39;&#34;在每个addFieldToTab的末尾。由于标签链接中没有Content-Field,因此无法在&#34; Content&#34;之后添加字段。
$fields->addFieldToTab('Root.Links', new TextField('fr_meter_url_classes', 'Meter URL by classes'));