ti-enxame.com

Como obter a forma do componente do módulo?

Eu tentei obter um formulário de componente do meu módulo. Peguei o modelo e tentei obter o formulário, mas o resultado estava vazio. Tentei definir 'JPATH_COMPONENT' e foi inútil.

define('JPATH_COMPONENT', JPATH_SITE . '/components/com_business');

jimport('joomla.application.component.model');
JModelLegacy::addIncludePath(JPATH_SITE . '/components/com_business/models');
$model = JModelLegacy::getInstance('Organization', 'BusinessModel'); //It is correct

$form = $model ->get('Form'); //empty
print_r($form);
3
aspirisen

Tente adicionar um caminho adicional para procurar formulários antes da sua chamada para $model->get('Form').

JForm::addFormPath(YOUR_COMPONENT_FORMS_PATH);

Você precisará disso porque o getForm chama loadForm (declarado na classe ancestral JModelForm) que, antes de obter a instância do formulário, usa este

JForm::addFormPath(JPATH_COMPONENT . '/models/forms');
JForm::addFieldPath(JPATH_COMPONENT . '/models/fields');

Como alternativa, você pode usar JForm::getInstance para obter uma instância do seu formulário.

Saudações,

4
Pep Lainez