X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass.pm;h=ef46276dba4bdc61b74eeed61f659dd64dfc8c75;hb=7da9cd47db7689a09f1b836692c2dd2fddabee84;hp=bcba15f182dc59195acf97750cf486b76affeaff;hpb=a02675cd9a11e1f354220319da9f5d573a2e484a;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class.pm b/lib/DBIx/Class.pm index bcba15f..ef46276 100644 --- a/lib/DBIx/Class.pm +++ b/lib/DBIx/Class.pm @@ -4,26 +4,16 @@ use strict; use warnings; use vars qw($VERSION); -use base; +use base qw/DBIx::Class::Componentised/; -$VERSION = '0.01'; +$VERSION = '0.03002'; -sub load_components { - my $class = shift; - my @comp = map { "DBIx::Class::$_" } grep { $_ !~ /^#/ } @_; - foreach my $comp (@comp) { - eval "use $comp"; - die $@ if $@; - } - no strict 'refs'; - unshift(@{"${class}::ISA"}, @comp); -} 1; =head1 NAME -DBIx::Class - Because the brain is a terrible thing to waste. +DBIx::Class - Extensible and flexible object <-> relational mapper. =head1 SYNOPSIS @@ -34,38 +24,67 @@ and meant to support compability with it, while restructuring the insides, and making it possible to support some new features like self-joins, distinct, group bys and more. +It's currently considered EXPERIMENTAL - bring this near a production +database at your own risk! The API is *not* fixed yet, although most of +the primitives should be good for the future and any API changes will be +posted to the mailing list before they're committed. + +The community can be found via - + + Mailing list: http://lists.rawmode.org/mailman/listinfo/dbix-class/ + + SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/ + + Wiki: http://dbix-class.shadowcatsystems.co.uk/ + + IRC: irc.perl.org#dbix-class + =head1 QUICKSTART If you're using Class::DBI, replacing -use base qw/Class::DBI/; + use base qw/Class::DBI/; with -use base qw/DBIx::Class/; -__PACKAGE__->load_components(qw/CDBICompat Core DB/); + use base qw/DBIx::Class/; + __PACKAGE__->load_components(qw/CDBICompat Core DB/); will probably get you started. If you're using AUTO_INCREMENT for your primary columns, you'll also want yo load the approriate PK::Auto subclass - e.g. -__PACKAGE__->load_components(qw/CDBICompat PK::Auto::SQLite Core DB/); + __PACKAGE__->load_components(qw/CDBICompat PK::Auto::SQLite Core DB/); (with is what ::Test::SQLite does to present the Class::DBI::Test::SQLite interface) If you fancy playing around with DBIx::Class from scratch, then read the docs -for ::Table and ::Relationship, +for DBIx::Class::Table, ::Row, ::Schema, ::DB and ::Relationship, -use base qw/DBIx::Class/; -__PACKAGE__->load_components(qw/Core DB/); + use base qw/DBIx::Class/; + __PACKAGE__->load_components(qw/Core DB/); and have a look at t/lib/DBICTest.pm for a brief example. -=head1 AUTHORS +=head1 AUTHOR + +Matt S. Trout + +=head1 CONTRIBUTORS + +Andy Grundman + +Brian Cassidy + +Dan Kubb + +Dan Sully + +davekam -Matt S. Trout +Marcus Ramberg =head1 LICENSE