[Kiev-pm] Задание конфигурации Dancer с помощью set

Ilya Chesnokov chesnokov.ilya at gmail.com
Mon Nov 4 15:02:40 PST 2013


2013/11/4 TheAthlete <theathlet ÎÁ yandex.ru>

>
> [6653]  info @0.000010> Self init: $VAR1 = bless( {
>                  'name' => 'haml',
>                  'config' => {},
>                  'type' => 'template'
>                }, 'Dancer::Template::Haml' ); in
> /path/to/custom/lib/Dancer/Template/Haml.pm l. 23
>
> А если поместить
>
> set engines => { haml => { cache => 1 } };
>
> выше
>
> set log_path  => './logs';
> set log_file  => 'dev.log';
> set logger    => 'file';
> set log       => 'core';
>
> то все выводится:
>

Да, интересное поведение. Насколько я понял, сохранится конфигурация или
нет, зависит от расположения параметров template и engines относительно
друг друга. Если engines сначала, то конфиг шаблонизатора сохраняется, в
противном случае не сохраняется.
Видимо, это из-за того, что при установке параметра template срабатывает
хук, который создаёт объект шаблонизатора и инициализирует его текущим
конфигом. Если конфиг engines на данный момент не задан, то
инициализируется пустым конфигом.
При использовании config.yml в момент вызова этого хука конфиг уже
полностью загружен, поэтому всё сохраняется.

Короче, надо бы зарепортить.

P.S. У Вас прямо талант находить баги.
-- 
Best regards,
Ilya Chesnokov
----------- ���� ���-----------
÷ÌÏÖÅÎÉÅ × ÆÏÒÍÁÔÅ HTML ÂÙÌÏ ÉÚ×ÌÅÞÅÎÏ…
URL: <http://mail.pm.org/pipermail/kiev-pm/attachments/20131105/12745b27/attachment.html>


More information about the Kiev-pm mailing list