自定义字段未出现
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 是否以正确的消息结尾。
我试图在 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 是否以正确的消息结尾。