0

我的应用程序中有一个渲染视图,当我导出为 PDF 时,我想使用之前渲染的数据。现在我用另一种方式来做,我再次加载所有的东西来导出。我该怎么做?

我已经使用了这段代码,但没有成功:

array('label'=>'Export pdf', 'url'=>array($this->renderPartial(
      'ViewPDF2', array('sessao' => $GLOBALS['session'],'name_project'=>$model->name_project,'id_project'=>$model->i‌d_project,'dataStart'=>$model->data_start,'dataEnd'=>$model->data_end))))
4

2 回答 2

2

我不确定您是如何在视图中获得该代码的?您将该数组作为参数传递给某个函数?我们现在只能看到您正在定义一个数组。

在视图中渲染视图的一般方法是这样的(这是容器视图文件):

<?php //view code here ?>
<!-- some html in your view-->
<div id='included_view' >    
  <?php $this->renderPartial('viewName', array('argForView'=>$foo)); ?>
</div>

<!-- rest of view -->

请注意,使用$foothere 意味着您之前将该变量传递给容器视图(或者您$foo在之前的 PHP 代码块中定义renderPartial

于 2013-02-05T17:21:59.330 回答
0

在 url 参数中,您应该使用 URL 地址,该 URL 地址指的是该操作呈现导出为 PDF 的视图的操作。renderPartial 方法只是以您自己的布局格式呈现视图文件。

于 2013-10-07T05:27:59.210 回答