где написать хелперы представления формы ZF2

Я хочу написать несколько настраиваемых вспомогательных функций представления, которые можно использовать повсеместно во всех формах в каждом из моих модулей. Куда писать помощники? Как я могу написать оператор invokables view_helpers в файле конфигурации на уровне проекта, чтобы не писать его в каждом файле module.config?


person jcropp    schedule 08.05.2014    source источник


Ответы (1)


Вам нужно только поместить вызываемую конфигурацию в одну из конфигураций модуля, вы сможете использовать помощники представления в любом модуле. В ZF2 нет ничего специфичного для модуля.

person Tim Fountain    schedule 08.05.2014
comment
Право на. Я подумал, что, возможно, стоит задокументировать здесь некоторые характеристики ZF2, с которыми я столкнулся до того, как получил этот ответ: если помощники с одним и тем же именем помещены более чем в один модуль, ZF2 позволяет объявить их более чем в одном module.config без выбрасывания сообщение об ошибке. Когда существует более одного пользовательского хелпера с одинаковым именем, при вызове будет отвечать один из хелперов, но не обязательно хелпер в модуле, который его вызвал. Я не мог определить, что заставило одного помощника вызываться раньше другого. - person jcropp; 09.05.2014
comment
Все конфигурации модулей объединены вместе, поэтому тот модуль, который загружается последним, выигрывает. Это позволяет вам легко переопределять файлы из сторонних модулей. - person Tim Fountain; 09.05.2014
comment
Это хорошо знать. Означает ли это, что проект может иметь главный файл module.config, в котором объявляются все контроллеры, все маршрутизаторы, конфигурации Doctrine и т. д.? Оператор 'modules' => array( ... ) в application.config определяет порядок загрузки модулей? - person jcropp; 09.05.2014
comment
Да на оба вопроса. - person Tim Fountain; 09.05.2014