NAME

Mojolicious - Web Framework

SYNOPSIS

use base 'Mojolicious';

sub startup {
    my $self = shift;

    my $r = $self->routes;

    $r->route('/(controller)/(action)')
      ->to(controller => 'foo', action => 'bar');
}

DESCRIPTION

Mojolicous is a web framework built upon Mojo.

See Mojo::Manual::Mojolicious for user friendly documentation.

ATTRIBUTES

Mojolicious inherits all attributes from Mojo and implements the following new ones.

mode

my $mode = $mojo->mode;
$mojo    = $mojo->mode('production');

Returns the current mode if called without arguments. Returns the invocant if called with arguments. Defaults to $ENV{MOJO_MODE} or development.

my $mode = $mojo->mode;
if ($mode =~ m/^dev/) {
    do_debug_output();
}

renderer

my $renderer = $mojo->renderer;
$mojo        = $mojo->renderer(Mojolicious::Renderer->new);

routes

my $routes = $mojo->routes;
$mojo      = $mojo->routes(Mojolicious::Dispatcher->new);

static

my $static = $mojo->static;
$mojo      = $mojo->static(MojoX::Dispatcher::Static->new);

types

my $types = $mojo->types;
$mojo     = $mojo->types(MojoX::Types->new)

METHODS

Mojolicious inherits all methods from Mojo and implements the following new ones.

new

my $mojo = Mojolicious->new;

Returns a new Mojolicious object. This method will call the method ${mode}_mode if it exists. ($mode being the value of the attribute mode). For example in production mode, production_mode will be called.

build_ctx

my $c = $mojo->build_ctx($tx);

dispatch

$mojo->dispatch($c);

finalize

$mojo->finalize($c);

handler

$tx = $mojo->handler($tx);

prepare

$mojo->prepare($c);

startup

$mojo->startup($tx);