Catalyst::Helper::Model::DBIC::Schema man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

Catalyst::Helper::ModeUserBContributedCatalyst::Helper::Model::DBIC::Schema(3)

NAME
       Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models

SYNOPSIS
	 script/create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass \
	   [ create=dynamic | create=static ] [ traits=trait1,trait2... ] \
	   [ Schema::Loader opts ] [ dsn user pass ] \
	   [ other connect_info args ]

DESCRIPTION
       Helper for the DBIC Schema Models.

   Arguments:
       "CatalystModelName" is the short name for the Catalyst Model class
       being generated (i.e. callable with "$c->model('CatalystModelName')").

       "MyApp::SchemaClass" is the fully qualified classname of your Schema,
       which might or might not yet exist.  Note that you should have a good
       reason to create this under a new global namespace, otherwise use an
       existing top level namespace for your schema class.

       "create=dynamic" instructs this Helper to generate the named Schema
       class for you, basing it on DBIx::Class::Schema::Loader (which means
       the table information will always be dynamically loaded at runtime from
       the database).

       "create=static" instructs this Helper to generate the named Schema
       class for you, using DBIx::Class::Schema::Loader in "one shot" mode to
       create a standard, manually-defined DBIx::Class::Schema setup, based on
       what the Loader sees in your database at this moment.  A Schema/Model
       pair generated this way will not require DBIx::Class::Schema::Loader at
       runtime, and will not automatically adapt itself to changes in your
       database structure.  You can edit the generated classes by hand to
       refine them.

       "traits" is the list of traits to apply to the model, see
       Catalyst::Model::DBIC::Schema for details.

       "Schema::Loader opts" are described in "TYPICAL EXAMPLES" below.

       "connect_info" arguments are the same as what
       DBIx::Class::Schema::connect expects, and are storage_type-specific.
       For DBI-based storage, these arguments are the dsn, username, password,
       and connect options, respectively.  These are optional for existing
       Schemas, but required if you use either of the "create=" options.

       username and password can be omitted for "SQLite" dsns.

       Use of either of the "create=" options requires
       DBIx::Class::Schema::Loader.

TYPICAL EXAMPLES
       Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
       and a Model which references it:

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=static dbi:mysql:foodb myuname mypass

       Same, with extra connect_info args user and pass can be omitted for
       sqlite, since they are always empty

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=static dbi:SQLite:foo.db \
	   AutoCommit=1 cursor_class=DBIx::Class::Cursor::Cached \
	   on_connect_do='["select 1", "select 2"]' quote_names=1

       ON WINDOWS COMMAND LINES QUOTING RULES ARE DIFFERENT

       In "cmd.exe" the above example would be:

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=static dbi:SQLite:foo.db \
	   AutoCommit=1 cursor_class=DBIx::Class::Cursor::Cached \
	   on_connect_do="[\"select 1\", \"select 2\"]" quote_names=1

       Same, but with extra Schema::Loader args (separate multiple values by
       commas):

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=static db_schema=foodb components=Foo,Bar \
	   exclude='^(wibble|wobble)$' moniker_map='{ foo => "FOO" }' \
	   dbi:Pg:dbname=foodb myuname mypass

       Coderefs are also supported:

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=static \
	   inflect_singular='sub { $_[0] =~ /\A(.+?)(_id)?\z/; $1 }' \
	   moniker_map='sub { join(q{}, map ucfirst, split(/[\W_]+/, lc $_[0])); }' \
	   dbi:mysql:foodb myuname mypass

       See DBIx::Class::Schema::Loader::Base for a list of options

       Create a dynamic DBIx::Class::Schema::Loader-based Schema, and a Model
       which references it (DEPRECATED):

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass

       Reference an existing Schema of any kind, and provide some connection
       information for ->config:

	 script/myapp_create.pl model CatalystModelName DBIC::Schema \
	   MyApp::SchemaClass dbi:mysql:foodb myuname mypass

       Same, but don't supply connect information yet (you'll need to do this
       in your app config, or [not recommended] in the schema itself).

	 script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass

METHODS
   mk_compclass
       This is called by Catalyst::Helper with the commandline args to
       generate the files.

   run
       Can be called on an instance to generate the files.

SEE ALSO
       General Catalyst Stuff:

       Catalyst::Manual, Catalyst::Test, Catalyst::Request,
       Catalyst::Response, Catalyst::Helper, Catalyst,

       Stuff related to DBIC and this Model style:

       DBIx::Class, DBIx::Class::Schema, DBIx::Class::Schema::Loader,
       Catalyst::Model::DBIC::Schema

AUTHOR
       See "AUTHOR" in Catalyst::Model::DBIC::Schema and "CONTRIBUTORS" in
       Catalyst::Model::DBIC::Schema.

COPYRIGHT
       See "COPYRIGHT" in Catalyst::Model::DBIC::Schema.

LICENSE
       This library is free software, you can redistribute it and/or modify it
       under the same terms as Perl itself.

perl v5.14.1			  2011Catalyst::Helper::Model::DBIC::Schema(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net