mojolicious — переходим на версию 6

Запомнившиеся изменения в версии 6. Некоторые стали очень неожиданным сюрпризом.

[...]

perl — REST интерфейсы

REST + Mojolicious

Mojolicious::Plugin::REST, Mojolicious::Plugin::RESTful, Mojolicious::Plugin::Restify примерно одинаковые. А вот Mojolicious::Plugin::Swagger2 уже из другой весовой категории.

[...]

Perl — Mojolicious — аутентификация/авторизация

PlugAuth - Pluggable authentication and authorization server.

Mojolicious::Plugin::BasicAuth - Basic HTTP Auth Helper

#!perl my $b = $r->under( '/' . $self->prefix => sub { my $c = shift; my $remote_addr = $c->remote_addr; return 1 if $remote_addr =~ /^10.(\d{1..3}).(\d{1..3}).(\d{1..3})$/o; return 1 if $remote_addr eq '127.0.0.1'; if ( $c->basic_auth( realm => sub { my ($user, $password) = [...]

Rose::DB::Object + hypnotoad (Mojolicious) + PostgreSQL

Я столкнулся с проблемой - из morbo всё работает, из-под hypnotoad все строки из базы данных в крякозябрах. Почему так происходит - почему в morbo всё работает, а в hypnotoad нет - я не разобрался, но понял как это лечить.

Rose::DB::Pg содержит описание использования флага pg_enable_utf8 . Описание неправильное, надо всегда его указывать в явном [...]

Mojolicious — странное поведение шаблонизатора

Вывод шаблонных переменных с кириллицей в данных различается от места использования:

Неработающий код - выводятся крякозябры: [cc] {'rstates'}}){ %>name_rus %> [/cc]

Работающий код: [cc] {'rstates'}}){ %>name_rus %> [/cc]

Разница - в первом случае используется тэг [...]

Mojolicious — соединение с базой данных

После некоторых экспериментов я пришёл к такой схеме соединения с базой данных: соединение в хуке after_static_dispatch. Преимущества - в начале сессии один раз проверяется доступность базы и переоткрывается соединение, нет лишних врапперов для DBI хэндла.

[...]

Mojolicious — использование route на стороне браузера

Задача - формирование URL в браузере. Хотел уже писать сам плагин, но набрёл на готовый Mojolicious::Plugin::JSUrlFor - спасибо Viktor Turskyi.

[...]

Mojolicious — ссылки для работы

Текущие интересующие ссылки

Mojolicious — Вставка на страницу какого-либо блока

Короткий ответ: это делается через helpers

[...]

Mojolicious — Документация

Источники документации по Mojolicious.

[...]