将日期字段自定义字段添加到Silversstripe中的事件页面


Add Datefield custom field to Event page in Silverstripe

在过去的几天里,我尝试使用以下文章将自定义日期字段添加到我的事件页面:

http://www.silverstripe.org/data-model-questions/show/14274http://doc.silverstripe.org/framework/en/trunk/reference/datefield

我的最后一种方法是按照以下代码执行:http://doc.silverstripe.org/framework/en/tutorials/2-extending-a-basic-site#showing-主页上的最新消息

这是我的代码:

    <?php
class EventPage extends Page {
    public function getCMSFields() {
        $fields = parent::getCMSFields();
        $dateField = new DateField('Date', 'Article Date (for example: 20/12/2010)');
        $dateField->setConfig('showcalendar', true);
        $dateField->setConfig('dateformat', 'dd/MM/YYYY');
        $fields->addFieldToTab('Root.Main', $dateField, 'Content');
        return $fields;
    }
}
class EventPage_Controller extends Page_Controller {
}

我面临的问题是:尝试构建时,它并没有完全构建,即没有构建所有内容,也没有给我一个信息,即构建现在已经完成。

之后转到管理页面,我看到白色的空白屏幕,尽管我的环境设置为dev,显示错误都在配置文件中:

Director::set_environment_type('dev');
error_reporting(E_ALL);

您是否还设置了$db对象属性,以便在数据库中的某个位置保存字段?

private static $db = array(
    'Date' => 'Date'
);

我在上面的代码中没有看到任何明显的错误,您采取了正确的方法。在添加此代码之前,开发/构建是否工作正常?可能是完全无关的东西导致了这个问题?