2012-03-05 4 views
1

Мне нужно добавить пользовательский контекст classesDirectory в applicationDirectory раздел к .zfproject.xml.Можно ли добавить пользовательский контекст в .zfproject.xml?

Я создал контекст класс, который расширяет Zend_Tool_Project_Context_Filesystem_Directory, но проблема в том, что все контексты загрузки необходимо разобрать .zfproject.xml жестко закодированы в Zend_Tool_Project_Provider_Abstract классе, как:

$contextRegistry->addContextsFromDirectory(
    dirname(dirname(__FILE__)) . '/Context/Zf/', 'Zend_Tool_Project_Context_Zf_' 
); 
$contextRegistry->addContextsFromDirectory(
    dirname(dirname(__FILE__)) . '/Context/Filesystem/', 'Zend_Tool_Project_Context_Filesystem_' 
); 

Так что я не вижу какой-либо способ загрузки мой контекст без исправления источников zend (или добавления пользовательских файлов в каталоги библиотеки Zend).

Возможно ли это?

ответ

1

Я не верю, что это возможно без изменения исходного кода ZF. Вы можете попробовать создать проблему на http://framework.zend.com/issues вместе с патчем. Пожалуйста, сделайте это общее, хотя.

В качестве альтернативы, что вы пытаетесь сделать, для этого нужен особый контекст? Может быть, есть еще один способ решить эту проблему?

+0

Я представляю еще один вид объектов, которые должны храниться в другом каталоге в приложении. Скажите каталог 'application/foo' и файл' application/foo/bar.php'. Для этого я создал новые контексты и успешно их сгенерировал, но застрял на этапе сохранения/разбора новых контекстов в '.zfproject.xml' – zerkms

+1

Я вижу. Я думаю, вам нужно будет изменить исходный код ZF. Другой альтернативой может быть создание собственного XML-файла с корнем проекта, такого как '.zfcustom.xml', и использовать его у вашего провайдера. –

Смежные вопросы