我正在使用SheaDawson的blocks module,而我正试图创建一个"最新博客文章"内容块。这是我的DataObject:
<?php
class LatestBlogPosts extends Block {
private static $db = array(
'ContainInGrid' => 'Boolean',
'PostCount' => 'Int'
);
static $defaults = array(
"PostCount" => 2
);
function getCMSFields() {
$fields = parent::getCMSFields();
return $fields;
}
public function LatestPosts() {
$blog = DataObject::get("BlogEntry", "", "Date DESC", "", $this->PostCount);
return $blog;
}
}
在页面模板上,它没有显示任何帖子。它说它找不到任何东西。当我检查数据库时,BlogEntry
表为空,即使我有两个已发布的帖子。
如何解决此问题?
答案 0 :(得分:4)
在最新版本的SilverStripe blog module中,博客条目类名为BlogPost
。 SerialHandler::AsyncReadSome()
是以前的课程,但这在2015年的某个时候发生了变化。
如果您使用的是最新版本的博客模块,则您的博客条目将创建为BlogEntry
,并且该数据将位于BlogPost
数据库表中。
您的BlogPost
功能应如下所示:
LatestPosts