Mojolicious::Plugin::JSONConfig - JSON configuration plugin
# myapp.json { "foo" : "bar", "music_dir" : "<%= app->home->rel_dir('music') %>" } # Mojolicious my $config = $self->plugin('JSONConfig'); # Mojolicious::Lite my $config = plugin 'JSONConfig'; # Reads myapp.json by default and puts the parsed version into the stash my $config = $self->stash('config'); # Everything can be customized with options my $config = plugin JSONConfig => { file => '/etc/myapp.conf', stash_key => 'conf' };
Mojolicious::Plugin::JSONConfig is a JSON configuration plugin that preprocesses it's input with Mojo::Template. The application object can be accessed via $app or the app helper. You can extend the normal config file myapp.json with mode specific ones like myapp.$mode.json.
$app
app
myapp.json
mode
myapp.$mode.json
Mojolicious::Plugin::JSONConfig inherits all options from Mojolicious::Plugin::Config and supports the following new ones.
template
# Mojolicious::Lite plugin JSONConfig => {template => {line_start => '.'}};
Template options.
Mojolicious::Plugin::JSONConfig inherits all helpers from Mojolicious::Plugin::Config.
Mojolicious::Plugin::JSONConfig inherits all methods from Mojolicious::Plugin::Config and implements the following new ones.
parse
$plugin->parse($content, $file, $conf, $app);
Process content with render and parse it with Mojo::JSON.
render
sub parse { my ($self, $content, $file, $conf, $app) = @_; ... $content = $self->render($content, $file, $conf, $app); ... return $hash; }
register
$plugin->register;
Register plugin in Mojolicious application.
$plugin->render($content, $file, $conf, $app);
Process configuration file with Mojo::Template.
sub render { my ($self, $content, $file, $conf, $app) = @_; ... return $content; }
Mojolicious, Mojolicious::Guides, http://mojolicio.us.
To install Mojolicious, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mojolicious
CPAN shell
perl -MCPAN -e shell install Mojolicious
For more information on module installation, please visit the detailed CPAN module installation guide.