1

我正在尝试制作一个 Yii 扩展来从表格中的 feed 的 url 存储中获取项目,然后在网页中显示它们。我对框架有点困惑,经过大量搜索后,我认为最好的选择是使用小部件。我的问题是所有要显示的项目都存储在小部件类的数组中。如何创建 html 内容来显示它们?我发现的只是调用 render() 方法来显示自定义视图,但我看不到从该视图访问我的数组的方法。

4

1 回答 1

1

您需要将数据(在本例中为您的数组)传递给视图。因此,假设您使用的是小部件(扩展 CPortlet),如下所示:

<?php
Yii::import('zii.widgets.CPortlet');
class MyWidget extends CPortlet
{
    public $my_array;

    protected function renderContent(){   
        $this->render("my_view",array(
            "my_array"  =>  $my_array
        ));
    }
}    

然后在您的视图中(my_view,将在您的组件/视图文件夹中)您可以像这样访问您的数组

$my_array[0]

当调用你的小部件时(在另一个视图中),你可以像这样传递你的数组:

$this->widget("MyWidget",array("my_array" => $my_array));

希望这能回答你的问题

于 2012-10-29T08:22:09.287 回答