自定义字段未出现

Custom fields not appearing

我试图在 CMS 中向我的页面添加一些自定义字段,但这些字段没有出现。

我有 运行 dev/build 但他们仍然没有出现。

为什么我的自定义字段没有出现在 CMS 中?

<?php

class FieldPage extends Page {

    private static $db = array (
        'Field1' => 'Varchar(32)',
        'Field2' => 'Varchar(32)'
    );

    public function getCMSFields() {
        $fields = parent::getCMSFields();

        $fields->addFieldToTab('Root.Main', TextField::create('Field1', 'Field 1'));
        $fields->addFieldToTab('Root.Main', TextField::create('Field2', 'Field 2'));

        return $fields;
    }
}

class FieldPage_Contoller extends Page_Controller {

}

那么,您是否也在 dev/build 当天或之前冲过水? dev/build 是否以消息“数据库构建完成!”结束?在该页面的最底部向下滚动!

您能否确认在您的数据库中创建了一个新的 table,其中包含您的 class 名称(在您的示例中为 FieldPage),其中包含数据库字段?

如果是,您仍然需要通过点击 "add new page" 按钮将 "FieldPage" 添加到您的 CMS。然后应该会出现这些字段。

如果您的代码中有任何 php 错误,

dev/build 将会中断,那么数据库不会根据您的需要进行更改。粘贴的代码看起来没问题,但它可能是任何其他 class 中的 php 错误。所以检查 dev/build 是否以正确的消息结尾。