在Silverstripe中扩展页面

时间:2015-01-14 08:32:27

标签: silverstripe

我正在使用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 {
}

1 个答案:

答案 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'));