Оптимальный способ подключения пакета

Добрый день.

Продолжаю разбираться с использованием своих таблиц в MODX.
Создал таблицу, сгенерировал схему, для работы с объектами необходимо подключать пакет:

$modx->addPackage('rehab', $modx->getOption('core_path').'components/rehab/model/','modx_rehab_'); 
$access = $modx->getObject('Access',1);
print $access->get('uid');

Пробую работу с процессорами, теперь за создание объекта будет отвечать процессор.

Вопрос: когда лучше подключать пакет — перед вызовом процессора:

$modx->addPackage('rehab', $modx->getOption('core_path').'components/rehab/model/','modx_rehab_'); 
$responce = $modx->runProcessor('access/create', $addAccessProps, $processorProps);
или в коде самого процессора?
Илья Уткин
15 ноября 2012, 12:51
modx.pro
983
0

Комментарии: 2

Василий Наумкин
16 ноября 2012, 14:10
0
В админке все само подключается, а на фронтенде надо подключать перед.
Или можно запустить getService('rehab', 'Rehab', бла-бла-бла), как в сниппете — это тоже подключит модель + даст возможность пользоваться методами вашего класса.

$Rehab = $modx->getService('rehab','Rehab',MODX_CORE_PATH.'components/rehab/model/rehab/',$scriptProperties);
if (!($Rehab instanceof Rehab)) return '';


Лично я пишу для себя в классе свой runProcessor:
public function runProcessor($action = '', $data = array()) {
	if (empty($action)) {return false;}
	$response = $this->modx->runProcessor($action,$data,array('processors_path' => $this->config['processorsPath']));
	if ($response->isError()) {
		return $response->getAllErrors();
	}
	else {
		return $response->response;
	}
}

И потом вызываю именно его:
$output = $Rehab->runProcessor('access/create');
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
2