yii外部action中如何渲染页面

来源:互联网 发布:网吧指纹软件申报 编辑:程序博客网 时间:2024/05/16 10:00
yii的controller中支持调用外部的action类(见《在controller中使用外部的action》)
但最近工作时碰到这样一个问题,外部action类如何渲染页面(render)呢?

假设有如下action类
<?phpclass WorktimeAction extends CAction {    public function run(){        //数据处理        ……        $this->render('worktime.php', $data);    }}
目的很简单,就是处理数据后,想用得到的$data数据填充页面worktime.php
但是,上面的写法,肯定是错的,因为WorktimeAction没有render方法...

怎么办呢?
其实controller类中是有render方法的,所以问题转换为如何得到调用该action的controller类。
翻看手册,发现CAction 类有getController()方法!
于是~问题解决了,上代码。
<?phpclass WorktimeAction extends CAction {    public function run(){        //数据处理        ……        $this->getController()->render('worktime.php', $data);    }}





原创粉丝点击