App-AutoCRUD
view release on metacpan or search on metacpan
lib/App/AutoCRUD.pm view on Meta::CPAN
name: Test AutoCRUD
datasources :
Source1 :
dbh:
connect:
# arguments that will be passed to DBI->connect(...)
# for example :
- dbi:SQLite:dbname=some_file
- "" # user
- "" # password
- RaiseError : 1
sqlite_unicode: 1
Create a file F<crud.psgi> like this :
use App::AutoCRUD;
use YAML qw/LoadFile/;
my $config = LoadFile "/path/to/config.yaml";
my $crud = App::AutoCRUD->new(config => $config);
my $app = $crud->to_app;
lib/App/AutoCRUD/ConfigDomain.pm view on Meta::CPAN
)
);
}
sub DataSource {
Struct (
dbh => Struct(
connect => One_of(
List(String(-name => "connect string"),
String(-name => "connect username"),
String(-name => "connect password"),
Struct(-name => "connect options", -optional => 1)),
Whatever(-does => 'CODE', -name => "coderef for connection"),
String(-name => "eval code for connection"),
),
db_catalog => String(-optional => 1),
db_schema => String(-optional => 1),
),
descr => String(-optional => 1),
require => String(-optional => 1),
schema_class => String(-optional => 1),
lib/App/AutoCRUD/ConfigDomain.pm view on Meta::CPAN
=back
=head2 datasources
datasources :
Chinook :
dbh:
connect:
- "dbi:SQLite:dbname=/path/to/Chinook_Sqlite_AutoIncrementPKs.sqlite"
- "" # username
- "" # password
- RaiseError: 1 # DBI options
sqlite_unicode: 1
A hashref describing the various databases served by this application.
Each key in the hashref is a short name for accessing the corresponding
datasource; that name will be part of URLs. Each value is a hashref
with the following keys :
=over
=item dbh
A hashref containing instructions for connecting to the database.
The main key is C<connect>, which contains a list of arguments
to L<DBI/connect>, i.e. a connection string, username, password,
and possibly a hashref of additional options. Alternatively, C<connect>
could also contain a coderef, or even just a string of Perl code,
which will be C<eval>ed to get the connection.
Optional keys C<db_catalog> and C<db_schema> may specify the values to
be passed to L<DBI/table_info>, L<DBI/column_info>, etc. This will be
necessary if your database contains several catalogs and/or schemata.
=item descr
( run in 1.764 second using v1.01-cache-2.11-cpan-49f99fa48dc )