由于我刚开始使用Joomla组件开发,这可能听起来很愚蠢,或者可能很简单。
我想知道是否可以将不同的模型附加到视图中,而不使用单独的控制器?
我的意图实际上是为不同的观点使用相同的模型。
提前完成了......
答案 0 :(得分:2)
是的,您可以使用
加载视图中的任何模型$model = JModel::getInstance('ModelName', 'ComponentNameModel');
答案 1 :(得分:0)
好的,搞定了。 基本上你只需要在JRequest类中检查'view'变量:
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');
希望它有所帮助...