Yii:在顶部帖子列表中显示已发布的帖子

时间:2015-10-22 16:45:25

标签: php yii

我使用了yii blog from Yii Framework

我希望在热门帖子列表中显示仅发布的帖子和热门帖子

我在Component

使用了此代码
Yii::import('zii.widgets.CPortlet');
class topPosts extends CPortlet {
public function gettopPosts()
{
    $cirteria=new CDbCriteria();
    $cirteria->select='`post_id`,count(`id`) as `likeCount`';
    $cirteria->condition='status=1';
    $cirteria->group='post_id';
    $cirteria->order='`likeCount` DESC';
    $cirteria->limit=10;
    $result=array();
    $condition = 'status=' . Post::STATUS_PUBLISHED;
    foreach(Like::model()->findAll($cirteria) as $IDS){
        $result[]=Post::model()->findByPk($IDS->post_id, $condition);
    }
    return $result;
}

protected function renderContent()
{
    $this->render('topPosts');
}}

但我更改了Publish post To Draft POST Show Error Trying to get property of non-object

1 个答案:

答案 0 :(得分:1)

更改

VK_PRIOR

foreach(Like::model()->findAll($cirteria) as $IDS){
        $result[]=Post::model()->findByPk($IDS->post_id, $condition);
    }

它唯一的猜测是因为我没有足够的信息,比如哪条线路问题。然而,除非你100%确定它的对象,否则你总是要检查你是否收到了对象或null。