NAME
instantcrud.pl - Bootstrap a Catalyst application example
SYNOPSIS
instantcrud.pl [options]
Options:
-help display this help and exits
-advanced_help display the advanced help screen and exits
-nonew don't create a .new file where a file to be created exists
-scripts update helper scripts only
-short use short types, like C instead of Controller...
-name application-name
-dsn dsn
-user database user
-password database password
-model_name model name (default: DBICSchemamodel)
-schema_name schema name (default: DBSchema)
application-name must be a valid Perl module name and can include "::"
Examples:
instantcrud.pl -name=My::App -dsn='dbi:Pg:dbname=CE' -user=zby -password='pass'
OPTIONS
(For advanced users...)
Authentication options:
(See Catalyst::Plugin::Authentication::Store::DBIC for more info)
-auth_user_table user table name
-auth_user_field user field name
-auth_password_field password field name
-auth_password_type password type (clear, crypted, hashed, or salted_hash)
-auth_password_hash_type password hash type (any hashing method supported by the Digest module may be used)
Authorization options:
-authz_role_table name of the table that contains the list of roles
-authz_role_field name of the field in authz_role_table that contains the role name
-authz_user_role_user_field name of the field in the user_role table that contains the user id
-authz_role_rel name of the relationship in role Class that refers to the mapping table between users and roles
DESCRIPTION
The catalyst.pl
script bootstraps a Catalyst application example, creating a directory structure populated with skeleton files.
The application name must be a valid Perl module name. The name of the directory created is formed from the application name supplied, with double colons replaced with hyphens (so, for example, the directory for My::App
is My-App
).
Using the example application name My::App
, the application directory will contain the following items:
- README
-
a skeleton README file, which you are encouraged to expand on
- Build.PL
-
a
Module::Build
build script - Changes
-
a changes file with an initial entry for the creation of the application
- Makefile.PL
-
an old-style MakeMaker script. Catalyst uses the
Module::Build
system so this script actually generates a Makeifle that invokes the Build script. - lib
-
contains the application module (
My/App.pm
) and subdirectories for model, view, and controller components (My/App/M
,My/App/V
, andMy/App/C
). - root
-
root directory for your web document content. This is left empty.
- script
-
a directory containing helper scripts:
my_app_create.pl
-
helper script to generate new component modules
my_app_server.pl
-
runs the generated application within a Catalyst test server, which can be used for testing without resorting to a full-blown web server configuration.
my_app_cgi.pl
-
runs the generated application as a CGI script
my_app_fastcgi.pl
-
runs the generated application as a FastCGI script
my_app_test.pl
-
runs an action of the generated application from the comand line.
- t
-
test directory
The application module generated by the catalyst.pl
script is functional, although it reacts to all requests by outputting a friendly welcome screen.
NOTE
Neither catalyst.pl
nor the generated helper script will overwrite existing files. In fact the scripts will generate new versions of any existing files, adding the extension .new
to the filename. The .new
file is not created if would be identical to the existing file.
This means you can re-run the scripts for example to see if newer versions of Catalyst or its plugins generate different code, or to see how you may have changed the generated code (although you do of course have all your code in a version control system anyway, don't you ...).
SEE ALSO
Catalyst::Manual, Catalyst::Manual::Intro
AUTHOR
Sebastian Riedel, sri@oook.de
, Andrew Ford, A.Ford@ford-mason.co.uk
Zbigniew Lukasiak, zz bb yy@gmail.com
Jonas Alves, jonas.alves at gmail.com
Jonathan Manning
COPYRIGHT
Copyright 2004-2005 Sebastian Riedel. All rights reserved.
This library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.