无法通过dataProvider访问对象属性

时间:2017-05-29 13:11:39

标签: php yii2

我试图达到对象的预言,但事情正在发生。可以意识到为什么我得到非对象错误。我做了很多次,但现在它不起作用。请大家给我一个建议!

if($comments)
{
    echo '<ul class="gridProduct col-md-12 pr0 pl0" style="min-height: 350px;">';
    foreach ($comments as $comment)
    {
        $user_comment = Testimonial::findOne($comment['id']);

        echo '<div class="col-md-6 item">
            <div class="vk-testimonial">
                    <div class="avatar">
                        <div class="vk-img-frame">
                            <a href="#" class="vk-img">
                                <img src="' . Yii::getAlias('@web') . '/testimonials/'  . $user_comment->filename . '" alt="">
                            </a>
                        </div>
                        <div class="profile">
                            <span class="name">' . $user_comment->name . '</span>
                        </div>
                    </div>
                    <div class="content">
                        <i class="fa fa-quote-left"></i>
                        <p class="vk-text">' . $user_comment->text . '</p>
                    </div>
                </div>
            </div>';
    }
    echo '</ul>';
    echo '</div>';
    echo '<nav class="box-pagination">';
    echo LinkPager::widget([
        'pagination' => $pagination,
        'nextPageCssClass' => 'remove-margin-left',
        'maxButtonCount' => 2
    ]);
    echo '</nav>';
}

控制器操作:

$pageSize = 6;
    $sql = "SELECT * FROM `testimonial` LEFT JOIN `testimonialLang` ON `testimonial`.`id`=`testimonialLang`.`testimonial_id` WHERE active=1 AND `language`=\"" . $lang->url . "\"";

        $count = count(\Yii::$app->db->createCommand($sql)->queryAll());

        $dataProvider = new SqlDataProvider([
           'sql' => $sql,
            'totalCount' => $count,
            'pagination' => [
                'pagesize' => $pageSize,
                'totalCount' => $count,
                'route' => Yii::$app->getRequest()->getQueryParam('first_step'),
            ]
        ]);

        $pagination = new Pagination([
            'pagesize' => $pageSize,
            'totalCount' => $count,
            'route' => Yii::$app->getRequest()->getQueryParam('first_step'),
        ]);

        $comments = $dataProvider->getModels();

        if(\Yii::$app->request->isPjax)
        {
            return $this->render('users-opinion', [
                'page' => $page,
                'comments' => $comments,
                'pagination' => $pagination,
                'lang' => $lang
            ]);
        }

        return $this->render('users-opinion', [
            'page' => $page,
            'comments' => $comments,
            'pagination' => $pagination,
            'lang' => $lang
        ]);

我在视图中的var_dump之前echo,它是一个包含所有属性的真实对象,但在echo我得到了:

  

尝试获取非对象的属性

0 个答案:

没有答案