2012-04-05 130 views
5

我在Yii有一個「view」頁面。
它與頁面緩存一起被緩存。
現在,我要插入一些動態內容:Yii動態渲染

$this->renderDynamic('renderPartial','view_name'); 

渲染視圖看起來是這樣的:

<?php some code ?> 
<div>...some html...</div> 

的代碼工作正常,但有此錯誤:

<###dynamic-0###>

所以我明白html被回顯而不是返回。
我嘗試將return = true傳遞給renderPartial函數。
什麼是正確的語法來做到這一點?

回答

7

更多信息:http://www.yiiframework.com/doc/api/1.1/CController#renderDynamic-detail

  1. 緩存視圖文件:

    $this->renderDynamic('dynamicTest'); 
    
  2. 控制器文件(回調函數):

    public function dynamicTest() 
    { 
        return $this->renderPartial('dynamicTest', null, true); 
    } 
    
  3. 動態視圖的文件:

    echo 'dynamicTest_' . time(); 
    

我認爲你忘了加在回調函數(步驟2)回報。

3

I try to pass the return=true to the renderPartial function. What is the right syntax to do it?

third param of renderPartial需要標誌

$this->renderDynamic('renderPartial','view_name', null, true);