2012-03-23 65 views
0

我一直在試圖在Kohana 3.2中使用動態視圖,但沒有成功。我在(元,內容和頁腳)中使用了包含三個視圖的以下佈局視圖。無法在瀏覽器中獲取動態視圖更新

視圖/佈局:

<html> 
    <head> 
     <?php echo $meta ?> 
    </head> 
    <body> 
     <?php echo $content ?> 
     <?php echo $footer ?> 
    </body> 
<html> 

我能夠開始呈現沒有問題(在$元視圖裏面出現值的默認值)所有三種意見,但後來在流我給你並將變量傳遞給新的$元視圖,但視圖不會在我的瀏覽器中更新。我啓用了針對特定視圖的日誌記錄(在變量已通過之後),看起來一切正常。

// Passing variables to view and rendering view in controller/layout 
$this->template->meta = View::factory('meta'); 
$this->template->meta->url = $this->template->art->url; 
$this->template->meta->name = $this->template->art->name; 
$this->template->meta->image = $this->template->art->image; 
$this->template->meta->about = $this->template->art->about; 
$this->response->body($this->template->meta); 
Kohana::$log->add(Log::INFO, 'TEMPLATE VALUE: ' . $this->template); 

如何強制更新視圖中的特定視圖,或者如何替換視圖?

+1

顯示你的控制器請 – biakaveron 2012-03-24 10:01:24

回答

0

原來,控制器被另一個控制器覆蓋。原來的$ this-> response-> body($ this-> template-> meta)在禁用了一些東西之後工作。

非常感謝大家的幫助,我們非常感謝大家努力修復它。

0

嘗試更換:

$this->response->body($this->template->meta); 

有了:

$this->response->body($this->template->meta->render()); 
+0

再次當我看着日誌我仍然看到元視圖部分已更新,但在瀏覽器中沒有明顯的變化。 – eanlain 2012-03-23 19:58:42

0

我假設你正在擴展的控制器,而不是Controller_Template這意味着你需要告訴身體處理整個模板。將這段代碼放在行爲的最後,它將允許您編輯元,內容或頁腳,直到您發送該命令。你可能過早地發送身體,然後嘗試改變它,這將是無用的。

$this->response->body($this->template); 
相關問題