2010-07-21 22 views
0

我正在學習CakePHP 1.26。
當我在Controller中創建一個函數時,我的腦海裏出現了一個問題。
如何最大化CakePHP中自定義函數的可用性。
如何最大化CakePHP中自定義函數的可用性

這裏是我的示例代碼:

,然後在.ctp文件,我會利用這個功能:

$u = $this->requestAction('../hello'); 
if($u==2){ 
echo "welcome back, my friend"; 
} 
else{ 
echo "Hello World"; 

請指教。

回答

1

避免使用$this->requestAction() - hello()應該從視圖操作和作爲視圖變量傳遞的結果被調用。

可重用性在級聯繫統上進行管理 - 在控制器上,它可以通過同一控制器上的任何方法進行訪問。在app_controller上,可以從任何控制器訪問它。如果它與數據相關,則適用同樣的原則 - 它在模型或app_model上。

通過正確應用MVC和OO的原則,您已經在做最佳的事情。

1

在我看來,你可以更輕鬆地完成工作。您的控制器中不需要該方法。您可以通過使用Session helper訪問存儲在會話什麼:

if($session->read('user')){ 
    echo "welcome back, my friend"; 
}else{ 
    echo "Hello World"; 
} 
相關問題