是否可以像在轨道中一样“播种”数据库?我想将种子与imageobject管理器结合使用,以便我可以按标题获取记录。
答案 0 :(得分:7)
根据您在Ingo的回答中留下的评论,您希望在页面类中添加requireDefaultRecords()
方法。
以下内容来自最近的项目并确保有特定的用户组,但您可以对任何类型的DataObject
执行相同操作(例如Page
)。
public function requireDefaultRecords() {
// Make sure there is a readers security group
$group = Group::get('Group')->filter('Code', 'readers')
if ( !$group->exists() ) {
$group = Group::create(array('Title' => 'Readers'));
$group->write();
}
}
执行构建时,此函数在所有DataObject
类上运行。
答案 1 :(得分:1)
您可以通过设置$db
数组来设置网页$defaults
变量的默认值。
class Page extends SiteTree {
public static $db = array(
'Title' => 'Text',
'Description' => 'Text'
);
public static $defaults = array(
'Title' => 'Default Title',
'Description' => 'Default Description'
);
...
}
答案 2 :(得分:0)
在这种情况下,不太确定“种子”是什么意思。有一个"data-generator" module可以在ORM列类型上用有根据的猜测写随机数据。