[Kiev-pm] [Moscow.pm] MVC::Neaf: Not Even A Framework
Konstantin S. Uvarin
khedin at gmail.com
Mon Dec 19 03:38:18 PST 2016
Приветствую.
Выпустил Neaf 0.14 c экспериментальными hooks:
* hook ставится на путь+метод, при этом можно указать exclude (т.е. пути,
к которым применяться НЕ будет)
* фазы, в которые можно воткнуться:
- pre_logic - после роутинга, но до выполнения основного хэндлера (+
прерывание путём die);
- pre_content - после хэндлера;
- pre_reply - перед отправкой заголовков клиенту (выполнение в обратном
порядке);
- pre_cleanup - перед уничтожением объекта запроса, после отложенных
операций (выполнение в обратном порядке);
- возможно, будут добавлены ещё. как минимум, pre_render, который
отрабатывает, ТОЛЬКО если собираемся применять шаблон/сериализатор. Ну и
pre-route надо запихнуть в ту же схему, не дело двум велосипедам быть в
одном фреймворке, который и так велосипед.
* единственный аргумент ВСЕХ хуков - объект request
* возвращаемое значение принципиально игнорируется, для коммуникаций
между хуками есть $request->stash. Также начиная с pre_content доступен
хэш, который вернул хэндлер, под именем $request->reply.
Кроме этого, добавлены зависящие от пути значения по умолчанию,
применяемые после успешного хэндлера, напр. MVC::Neaf->set_path_defaults(
'/api' => { -view => 'JS' } );
У них, правда, пока нет exclude.
Кроме этого, добавлен Dancer-подобный сахар в виде
use MVC::Neaf qw(:sugar);
get '/path' => sub { ... };
neaf error => 404 => sub { ... };
neaf->run;
Он тоже экспериментальный.
https://github.com/dallaylaen/perl-mvc-neaf/
https://metacpan.org/pod/MVC::Neaf
Акжану присуждается медаль в дисциплине "взятие на слабо", а если
серьёзно, то спасибо за классный challenge и ссылки :)
--
Konstantin S. Uvarin
jabber: see <from>
skype: kuvarin
http://github.com/dallaylaen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/kiev-pm/attachments/20161219/e0708432/attachment.html>
More information about the Kiev-pm
mailing list