Mojolicious::Plugin::CUsergContributed Perl DocMojolicious::Plugin::Config(3p)



NAME
       Mojolicious::Plugin::Config - Perlish Configuration Plugin

SYNOPSIS
         # myapp.conf
         {
           foo       => "bar",
           music_dir => app->home->rel_dir('music')
         };

         # Mojolicious
         my $config = $self->plugin('config');

         # Mojolicious::Lite
         my $config = plugin 'config';

         # Reads myapp.conf by default and puts the parsed version into the stash
         my $config = $self->stash('config');

         # Everything can be customized with options
         my $config = plugin config => {
           file      => '/etc/myapp.stuff',
           stash_key => 'conf'
         };

DESCRIPTION
       Mojolicious::Plugin::Config is a Perl-ish configuration plugin.  The
       application object can be accessed via the "app" helper.  You can
       extend the normal config file "myapp.conf" with "mode" specific ones
       like "myapp.$mode.conf".

OPTIONS
   "default"
         # Mojolicious::Lite
         plugin config => {default => {foo => 'bar'}};

       Default configuration.

   "ext"
         # Mojolicious::Lite
         plugin config => {ext => 'stuff'};

       File extension of config file, defaults to "conf".

   "file"
         # Mojolicious::Lite
         plugin config => {file => 'myapp.conf'};
         plugin config => {file => '/etc/foo.stuff'};

       Configuration file, defaults to the value of "MOJO_CONFIG" or
       "myapp.conf" in the application home directory.

   "stash_key"
         # Mojolicious::Lite
         plugin config => {stash_key => 'conf'};

       Configuration stash key.

HELPERS
   "config"
         <%= config 'something' %>
         <%= config->{something} %>

       Access config values.

METHODS
       Mojolicious::Plugin::Config inherits all methods from
       Mojolicious::Plugin and implements the following new ones.

   "load"
         $plugin->load($file, $conf, $app);

       Loads config file and passes the content to "parse".

         sub load {
           my ($self, $file, $conf, $app) = @_;
           ...
           return $self->parse($content, $file, $conf, $app);
         }

   "parse"
         $plugin->parse($content, $file, $conf, $app);

       Parse config file.

         sub parse {
           my ($self, $content, $file, $conf, $app) = @_;
           ...
           return $hash;
         }

   "register"
         $plugin->register;

       Register plugin in Mojolicious application.

SEE ALSO
       Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.



perl v5.12.2                      2011-03-16   Mojolicious::Plugin::Config(3p)
