Есть ли метод/функция для написания подпрограммы/метода автозапуска для всех доступных маршрутов Mojolicious?
Может быть, автоматический помощник, но я пока не знаю, как это сделать.
Я думаю, что это полезно, особенно для инициализации соединения с базой данных $self->{dbh} почти для всех доступных маршрутов... поэтому я могу написать так:
helper DB => sub { state $dbh = Database->new };
get '/' => sub {
my $self = shift;
//$self->{dbh} // is automatically initialized & shared
};
get '/another_route' => sub {
my $self = shift;
//$self->{dbh} // also initialized & shared
};
вместо:
get '/' => sub {
my $self = shift;
$self->{dbh} = init_db();
};
get '/another_route' => sub {
my $self = shift;
$self->{dbh} = init_db();
};
P.S. Я использую Mojolicious: Lite, Perl 5.16, SQLite3.