0
由於我剛剛開始使用Joomla組件開發,這聽起來可能聽起來很愚蠢,或者可能是微不足道的。沒有控制器的視圖的多個模型
我想知道是否有可能有不同的模型附加到視圖,而不使用單獨的控制器?
我的意圖實際上是爲不同的視圖使用相同的模型。
Thanx提前...
由於我剛剛開始使用Joomla組件開發,這聽起來可能聽起來很愚蠢,或者可能是微不足道的。沒有控制器的視圖的多個模型
我想知道是否有可能有不同的模型附加到視圖,而不使用單獨的控制器?
我的意圖實際上是爲不同的視圖使用相同的模型。
Thanx提前...
是的,你可以加載視圖中的任何模型
$model = JModel::getInstance('ModelName', 'ComponentNameModel');
好,我知道它的工作。 基本上你只需要在JRequest類來檢查「視圖」變量:
if(JRequest::getVar('view') == 'yourtargetview') {
$modelMain = $this->getModel ('yourtargetmodel');
$viewCallback = $this->getView ('yourtargetview', 'html');
$viewCallback->setModel($modelMain, true); // true is for the default model;
}
,然後在目標視圖類,參考模型的功能如下(請注意第二個參數來獲取調用):
$this->targetFieldValue = $this->get('targetMethod', 'targetModel');
希望它可以幫助...
'targetField'是方法或屬性名稱。並從'$ viewCallback =&$ this-> getView'中刪除'&',它被棄用,並且會自PHP5.3+引發警告,無論如何通過引用傳遞對象 – 2013-04-04 07:26:07
其方法....和thnx的建議,我會刪除它:) – 2013-04-04 07:27:38