Stefan G. > Kelp > Kelp::Routes::Controller

Download:
Kelp-0.9012.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

Open  0
View/Report Bugs
Source  

NAME ^

Kelp::Routes::Controller - Routes and controller for Kelp

SYNOPSIS ^

    # config.pl
    # ---------
    {
        modules_init => {
            Routes => {
                base   => 'MyApp::Controller',
                router => 'Controller'
            }
        }
    }

    # MyApp/Controller.pm
    # -------------------
    package MyApp::Controller;
    use Kelp::Base 'MyApp';

    sub shared_method {
        my $self = shift;   # $self is an instance of 'MyApp::Controller'
        ...
    }


    # MyApp/Controller/Users.pm
    # -------------------------
    package MyApp::Controller::Users;
    use Kelp::Base 'MyApp::Controller';

    my read {
        my $self = shift;   # $self is an instance of 'MyApp::Controller::Users'
        ...
    }

DESCRIPTION ^

This router module reblesses a Kelp application into its own controller class. This allows you to structure your web application in a classic object oriented fashion, having $self an instance to the current class rather than the main web application.

You must create a main controller class which inherits from Kelp. Each subsequent class can inherit from this class, taking advantage of any common functionality.

syntax highlighting: