0

对不起这个问题。我已经阅读了两本书和几个教程,以及 Yii 的文档,但我仍然无法理解如何做这个非常基本的事情。基本上,我需要从表格中读取所有元素并将它们显示在列表中。

我做了这个

在控制器上(方法 actionIndex())

$criteria = new CDbCriteria();

    $dataProvider = new CActiveDataProvider('Items', array(
        'criteria'=>$criteria,
    ));

    $this->render('index',array(
        'dataProvider'=>$dataProvider,
    ));

在视图 index.php

<?php $this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView' => '_item'

));

?>

在查看 item.php

<?php $this->renderPartial('_item',array(
        'post'=>$dataProvider,

    )); ?>

并在部分视图中 _item

<?php
$this->Widget('CMarkdown', array('purifyOutput'=>true));

?>

即使分页有效,系统也不会显示任何内容。我相信必须以某种方式在渲染视图中访问具有当前 ActiveRecord 元素或其他元素的对象(我不明白控制器的 CActiveDataProvider 是否是 ActiveRecord 元素)。

我会非常感谢在这件事上能帮助我的每一个人

4

1 回答 1

2

根据您所说的,您似乎有一个不必要的文件。您不需要 item.php。

此外,您的部分视图 _item 需要是:

$this->beginWidget('CMarkdown', array('purifyOutput'=>true));
echo $data->content;
$this->endWidget();

我写了 $data->content; 但是您需要将单词内容替换为您实际要显示的属性。

于 2013-02-11T21:14:42.907 回答