The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Ado::Plugin::Routes - Keep routes separately.

SYNOPSIS

  #Open $MOJO_HOME/etc/plugins/routes.conf and describe your routes
  routes     => [
        {route => '/ado-users', via => ['GET'],
          to => 'ado-users#list',},
        {route => '/ado-users', via => ['POST'],
          to => 'ado-users#add',},
        ...
        ],
  base_url_path =>'/'

DESCRIPTION

Ado::Plugin::Routes allows you to define your routes in a separate file $MOJO_HOME/etc/plugins/routes.conf. In the configuration file you can also use the app keyword and add complex routes as you would do directly in the code.

OPTIONS

base_url_path

Base URL which will be used to construct URLs when deployed as FCGI or CGI. Default: undef.

routes

And ARRAY reference describing the routes.

METHODS

Ado::Plugin::Routes inherits all methods from Ado::Plugin and implements the following new ones.

register

This method is called by $app->plugin. Registers the plugin in Ado application and merges routes configuration from $MOJO_HOME/etc/ado.conf with routes defined in $MOJO_HOME/etc/plugins/routes.conf. Routes defined in ado.conf can overwrite those defined in plugins/routes.conf.

HOOKS

This plugin implements the following hooks.

before_dispatch

This hook is generated if you add the option base_url_path to plugin configuration. In case the application is deployed as CGI or FCGI application, the url part containing ado is removed from the base url path so the urls are the same as if deployed standalone or with hypnotoad. The configuration for Apache is expected to be generated by Ado::Command::generate::apache2htaccess.

SEE ALSO

Ado::Command::generate::apache2htaccess, Ado::Command::generate::apache2vhost, Mojolicious::Guides::Routing, Mojolicious::Routes, Ado::Plugin, Ado::Manual::Plugins,Mojolicious::Plugins, Mojolicious::Plugin,

SPONSORS

The original author

AUTHOR

Красимир Беров (Krasimir Berov)

COPYRIGHT AND LICENSE

Copyright 2013-2014 Красимир Беров (Krasimir Berov).

This program is free software, you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may copy, distribute and modify the software provided that modifications are open source. However, software that includes the license may release under a different license.

See http://opensource.org/licenses/lgpl-3.0.html for more information.