Neurons to bytes

Posts Tagged ‘zend framework’

Zend_Form - установить собственное сообщение об ошибке

08.17.2009 by Ouch! - 0 Comment
Posted in программерское

Zend_Form - переопределение ошибок.

Иногда требуется в форме установить собственное сообщение об ошибке, когда форма проходит валидацию.

Например, мы хотим проверить, заполнено ли имя пользователя:

$username = $this->createElement('text', 'username');
$username->setRequired();

$username->addValidator('NotEmpty', false, array(
    'messages' => array(
        'isEmpty' => 'EmptyUsername'
    )
));

Видно, как в массиве сообщений мы делаем как бы алиас на нужное нам сообщение. Теперь осталось только добавить в файл с переводами строчку

'EmptyUsername' => 'Введите имя пользователя'

и при валидации, если поле будет пустое, мы увидим переопределенную нами ошибку:

Введите имя пользователя

Вот так вот.

Zend Translate и сканирование директорий

07.28.2009 by Ouch! - 0 Comment
Posted in программерское

Здарова, юзеры ZF!

Большинство из вас уже используют Zend_Translate. До сих пор возможность для сканирования каталогов для перевода файлов была доступна только при создании экземпляра Zend_Translate.

Теперь я добавил эту возможность  также и для метода addTranslation(), который означает, что вы теперь можете добавлять новые каталоги после создания экземпляра объекта. Эта функция удобна, когда вы используете модульную структуру приложения и файлы с переводами существуют для каждого модуля в отдельности.

Для тех, кто ничего не знает про данную функциональность - у меня тут есть краткое описание:

Вместо того, чтобы добавлять переводы вручную, будет гораздо удобнее использовать автоматическое добавление переводов, используя только один вызов метода. Read the rest of this entry »

Микропост про базовый контроллер

07.27.2009 by Ouch! - 1 Comment
Posted in Без рубрики

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

Лучше в нем вообще ничего не инициализировать, а только проверять.

Блоки в Zend Framework, версия 2

07.24.2009 by Ouch! - 3 Comments
Posted in программерское

В своей статье Блоки в Zend Framework я рассказал, как можно встраивать блоки в макет приложения на Zend Framework. Но, как оказалось, предложенный мною способ не является удобным - мы не можем управлять поведением блоков, то есть не можем включать их только для некоторых контроллеров. Это был огромный недостаток.

Но! Я хорошенько обмозговал все это дело и решил исправить ситуацию. Итак, представляю вам второй способ работы с блоками в ZF. Read the rest of this entry »

Блоки в Zend Framework

07.20.2009 by Ouch! - 2 Comments
Posted in программерское

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

Если следовать принципу предыдущей заметки, то для каждого блока нам понадобилось бы создавать отдельный плагин фронт-контроллера, и подключать его в Bootstrap-файле. Но это накладные расходы, чего нам не надо. Read the rest of this entry »

Меню администратора, или блоки в Zend Framework.

07.09.2009 by Ouch! - 2 Comments
Posted in Без рубрики

Продолжаю серию постов о Zend Framework.

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

Сначала я хотел решить эту задачу, определив базовый контроллер для всех контроллеров моего проекта. Но, я подумал, что это не лучший способ решения задачи, потому как я нашел более привлекательный метод - использовать плагин для фронт-контроллера. Такое решение мне показалось лучшим потому, что мы получаем менее связанный код. Чтобы убрать меню - нам придется всего лишь отключить плагин фронт-контроллера - это все. Нас опять выручают плагины! Read the rest of this entry »

Установка title, keywords и description на страницы сайта в Zend Framework

07.08.2009 by Ouch! - 0 Comment
Posted in Без рубрики

Итак, в один прекрасный момент работы с Zend Framework вам понадобится устанавливать title, description и keywords или какую-либо другую информацию к своим страницам, получая эту информацию из БД.

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

Поэтому, я написал эту функциональность в виде готового плагина. Read the rest of this entry »

Загрузка view по-требованию в Zend Framework

07.07.2009 by Ouch! - 0 Comment
Posted in Без рубрики

Поведение ZF по-умолчанию мне не очень нравится - он всегда загружает шаблон вида. То есть для каждого действия в контроллере обязательно должен быть шаблон вида.

Но шаблон часто не требуется - например, когда отдаете данные из действия в JSON, или не отдаете вообще ничего. В этом случае вам приходится отключать рендеринг вида при помощи

$this->_helper->viewRenderer->setNoRender(true);

Но так делать не удобно, если у вас много действий, где шаблон вида не нужен. Давайте пойдём по пути Rails :). Мы сделаем так, чтобы шаблон вида загружался только в том случае, если он существует. Для этого напишем помощник действия (action helper): Read the rest of this entry »