ファイルを配置でルーティングを自動生成 - Mojolicious::Plugin::AutoRoute



  1. Perl




  2. Mojolicious



  3. here

Mojolicious::Plugin::AutoRouteは、ファイルを配置するだけで、ルーティングを自動的に生成してくれるプラグインです。

Mojolicious::Plugin::AutoRoute

テンプレートをファイルとして配置するだけで書くだけで、Webアプリケーションを作成することができます。

PHPのようにファイル置いただけで動いたら楽だな」と考えている方にピッタリです。

使い方

# Mojolicious
$self->plugin('AutoRoute');

# Mojolicious::Lite
plugin 'AutoRoute';

# Option
plugin 'AutoRoute', route => $r;

「templates」ディレクトリの中に「auto」ディレクトリを作成して、その中にテンプレートを配置してください。

対応したルーティングが自動で生成されます。

テンプレート                        ルート
templates/auto/index.html.ep        # /
              /foo.html.ep          # /foo
              /foo/bar.html.ep      # /foo/bar
              /foo/bar/baz.html.ep  # /foo/bar/baz

オプション

route
route => $route;

必要であれば親のルートの指定できます。これはMojolicious::Routesオブジェクトです。デフォルトは$app->routesです。

top_dir
top_dir => 'myauto'

トップディレクトリの名前。デフォルトはautoディレクトリです。

サンプル

use Mojolicious::Lite;

# AutoRoute
plugin 'AutoRoute';

@@ auto/index.html.ep
/

@@ auto/foo.html.ep
/foo

@@ auto/bar.html.ep
/bar

@@ auto/foo/bar/baz.html.ep
/foo/bar/baz

@@ auto/json.html.ep
<%
  $self->render(json => {foo => 1});
  return;
%>