Catalyst::Plugin::ConfigLoader::Manual.3pm

Langue: en

Version: 2008-10-14 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Catalyst::Plugin::ConfigLoader::Manual - Guide to using the ConfigLoader plugin

BASIC USAGE

     package MyApp;
     
     use Catalyst qw( ConfigLoader ... );
 
 

ENVIRONMENT VARIABLES

"MYAPP_CONFIG" - specific config file to load for ``MyApp''
"CATALYST_CONFIG_LOCAL_SUFFIX" - global suffix for extra config files
"MYAPP_CONFIG_LOCAL_SUFFIX" - suffix specifically for ``MyApp''

CONFIG FORMATS

Config::General

Extensions
cnf
conf

Example Config

     name = TestApp
     <Component Controller::Foo>
         foo bar
     </Component>
     <Model Baz>
         qux xyzzy
     </Model>
 
 

INI

Extensions
ini

Example Config

     name=TestApp
     
     [Controller::Foo]
     foo=bar
     
     [Model::Baz]
     qux=xyzzy
 
 

JSON

Extensions
jsn
json

Example Config

     {
         "name": "TestApp",
         "Controller::Foo": {
             "foo": "bar"
         },
         "Model::Baz": {
             "qux": "xyzzy"
         }
     }
 
 

Perl

Extensions
pl
perl

Example Config

     {
         name => 'TestApp',
         'Controller::Foo' => {
             foo => 'bar'
         },
         'Model::Baz' => {
             qux => 'xyzzy'
         }
     }
 
 

XML

Extensions
xml

Example Config

     <config>
         <name>TestApp</name>
         <component name="Controller::Foo">
             <foo>bar</foo>
         </component>
         <model name="Baz">
             <qux>xyzzy</qux>
         </model>
     </config>
 
 

YAML

Extensions
yml
yaml

Example Config

     ---
     name: TestApp
     Controller::Foo:
         foo: bar
     Model::Baz:
         qux: xyzzy
 
 

COOKBOOK

Configuring a Catalyst::Model::DBIC::Schema model from a YAML config

     Model::MyModel:
       schema_class: MyApp::MySchema
       connect_info:
         - dbi:SQLite:myapp.db
         - ''
         - ''
         - AutoCommit: 1
 
 

Converting your existing config to Config::General format

As of Catalyst::Devel 1.07, a newly created application will use Config::General for configuration. If you wish to convert your existing config, run the following one-liner (replacing MyApp with your app's name):
     perl -Ilib -MMyApp -MConfig::General -e 'Config::General->new->save_file("myapp.conf", MyApp->config);'
 
 

Using UTF-8 strings in a Config::General file

If you have UTF-8 strings in your Config::General-based config file, you should add the following config information to MyApp.pm:
     __PACKAGE__->config( 'Plugin::ConfigLoader' => {
         driver => {
             'General' => { -UTF8 => 1 },
         }
     } );