рекомендуется создать раздел администратора в приложении на основе ZF


В каждом крупном приложении есть раздел АДМИНИСТРАТОРА.
В таких случаях, когда я не использую ZF, я обычно помещаю все административные материалы в отдельный каталог с дополнительными мерами безопасности (например, добавлением аутентификации на основе .htaccess и/или второго входа в систему и т. Д.). Это также делает довольно очевидным в дереве файлов, что такое файл.

Как я могу добиться такого же дизайна в ZF? Или есть ли какие-либо рекомендации по созданию раздела администратора?
Должен ли я делать это на уровне маршрутизатора (если есть является ли "администратор" в URL-адресе, то я использую другой index.php /файл начальной загрузки....)
Я думаю, что самым простым было просто использовать контроллер для всех административных функций, но у меня их слишком много. Таким образом, у меня есть несколько контроллеров администратора рядом с обычными контроллерами приложений. Это создает беспорядок в моем каталоге контроллеров - какой контроллер является администратором, а какой нет?

Author: Itay Moav -Malimovka, 2009-04-26

3 answers

Обычно я создаю отдельную папку "приложение" - в комплекте с собственным контроллером и каталогом просмотра, а также общедоступным каталогом для статического содержимого - для всей системы администрирования. Администрация обычно предъявляет разные требования к ключевым вещам, таким как управление доступом, и может отличаться от фактического приложения множеством других способов. Поэтому я думаю, что это хорошая идея - полностью отделить исходный код. Тем не менее, некоторые исходные коды все еще могут быть общими. Примеры включают библиотечные папки и модели баз данных.

Этот подход также дает вам большую гибкость при принятии решения о том, где должна быть доступна утилита администрирования. Вы можете использовать псевдоним apache directice, чтобы поместить его в подкаталог в том же домене или разместить на отдельном хосте. Все зависит от тебя.

 0
Author: Emil H, 2009-04-26 01:49:21

Я сделал это как модуль . В дополнение к ссылке на модуль, предоставленной Бреттом Бендером, см. Раздел 12.3.2.2 в ссылке, которую я предоставил.

 4
Author: Stuart, 2009-04-26 03:17:47

Вам следует проверить использование модулей с ZF. У вас может быть модуль по умолчанию, содержащий материалы, не относящиеся к администратору, и модуль администратора, содержащий все административное. Использование модуля по умолчанию не изменит ваши текущие URL-адреса, и URL-адреса модуля администратора будут выглядеть как server.com/admin/controllername/actionname/params. Это решит проблему, когда все ваши контроллеры будут находиться в одном и том же месте и будут загромождены. Кроме того, вы можете подклассировать Zend_Controller_Action и создать Master_Controller в своих моделях, чтобы сохранить общую функциональность. Затем просто сделайте Admin_Controller, который расширяет главный контроллер для общих административных функций, и у каждого контроллера в вашем модуле администратора есть подкласс этого. Вы можете использовать аналогичную структуру для организации общих функций, не связанных с администрированием, в других ваших модулях.

Zend Framework - модульная структура каталогов

 0
Author: Brett Bender, 2009-04-26 02:42:45