我正在开发Joomla 3.4 application
,我必须将一个组件模型调用到另一个组件控制器,但不能从那里调用。
支持,我有2个组件
>> comp1
model: m1
controller: c1
>> comp2
model: m2
controller: c2
我想致电comp1 model (m1) into comp2 controller (c2).
我尝试使用以下代码:
$model = $this->getModel('m1', '', array());
但是$model
如果上面的代码在comp1 controller (c1)
中使用,则获取空值,然后运行完美。
实际上没有问题。任何人都有一个完美的主意。
由于
答案 0 :(得分:4)
这是一个老问题,但迟到总比没有好,我希望它能帮助其他开发者。
要从另一个组件调用模型,首先需要包含此模型的路径:
JModelLegacy::addIncludePath(JPATH_SITE . '/components/comp1/models', 'Comp1Model');
其次,您必须创建模型的实例:
$model = JModelLegacy::getInstance('Model1', 'Comp1Model');
之后,您应该可以使用模型的方法。