Lo, doth everything now use resultset_instance
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class.pm
CommitLineData
ea2e61bf 1package DBIx::Class;
2
5d283305 3use strict;
4use warnings;
5
5d283305 6use vars qw($VERSION);
3c0068c1 7use base qw/DBIx::Class::Componentised Class::Data::Accessor/;
8
9sub mk_classdata { shift->mk_classaccessor(@_); }
227d4dee 10
2f5911b2 11$VERSION = '0.0499_01';
227d4dee 12
126042ee 13
ea2e61bf 141;
34d52be2 15
16=head1 NAME
17
7e4b2f59 18DBIx::Class - Extensible and flexible object <-> relational mapper.
34d52be2 19
20=head1 SYNOPSIS
21
22=head1 DESCRIPTION
23
24This is a sql to oop mapper, inspired by the L<Class::DBI> framework,
25and meant to support compability with it, while restructuring the
26insides, and making it possible to support some new features like
27self-joins, distinct, group bys and more.
28
96ce20f5 29This project is still at an early stage so the maintainers don't make
30any absolute promise that full backwards-compatibility will be supported;
31however if we can without compromising the improvements we're trying to
32make, we will, and any non-compatible changes will merit a full justification
33on the mailing list and a CPAN developer release for people to test against.
daec44b8 34
35The community can be found via -
36
37 Mailing list: http://lists.rawmode.org/mailman/listinfo/dbix-class/
38
39 SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
40
41 Wiki: http://dbix-class.shadowcatsystems.co.uk/
42
43 IRC: irc.perl.org#dbix-class
44
39fe0e65 45=head1 QUICKSTART
46
448c8424 47If you're using Class::DBI, and want an easy and fast way of migrating to
48DBIx::Class look at L<DBIx::Class::CDBICompat>.
39fe0e65 49
448c8424 50There are two ways of using DBIx::Class, the 'simple' and the 'schema' one.
39fe0e65 51
448c8424 52The 'simple' way of using DBIx::Class needs less classes than the 'schema'
53way but doesn't give you the ability to use different database connections.
39fe0e65 54
448c8424 55Some examples where different database connections are useful are:
39fe0e65 56
448c8424 57different users with different rights
58different databases with the same schema.
39fe0e65 59
448c8424 60=head1 Simple
126042ee 61
448c8424 62First you need to create a base class all other classes inherit from.
126042ee 63
448c8424 64Look at L<DBIx::Class::DB> how to do this
39fe0e65 65
448c8424 66Next you need to create a class for every table you want to use with
67DBIx::Class.
39fe0e65 68
448c8424 69Look at L<DBIx::Class::Table> how to do this.
39fe0e65 70
448c8424 71
72=head2 Schema
73
74With this approach the table classes inherit directly from DBIx::Class::Core,
75although it might be a good idea to create a 'parent' class for all table
76classes which inherits from DBIx::Class::Core and adds additional methods
77needed by all table classes, e.g. reading a config file, loading auto primary
78key support.
79
80Look at L<DBIx::Class::Schema> how to do this.
81
82If you need more hand-holding, check out the introduction in the
83manual below.
39fe0e65 84
076652e8 85=head1 SEE ALSO
86
87=over 4
88
89=item L<DBIx::Class::Core> - DBIC Core Classes
90
448c8424 91=item L<DBIx::Class::CDBICompat> - L<Class::DBI> Compat layer.
076652e8 92
93=item L<DBIx::Class::Manual> - User's manual.
94
95=back
96
3942ab4d 97=head1 AUTHOR
34d52be2 98
daec44b8 99Matt S. Trout <mst@shadowcatsystems.co.uk>
34d52be2 100
3942ab4d 101=head1 CONTRIBUTORS
102
103Andy Grundman <andy@hybridized.org>
104
105Brian Cassidy <bricas@cpan.org>
106
107Dan Kubb <dan.kubb-cpan@onautopilot.com>
108
109Dan Sully <daniel@cpan.org>
110
ccb9c9b1 111David Kamholz <dkamholz@cpan.org>
112
113Jules Bean
3942ab4d 114
115Marcus Ramberg <mramberg@cpan.org>
116
ccb9c9b1 117Paul Makepeace
118
34d52be2 119=head1 LICENSE
120
121You may distribute this code under the same terms as Perl itself.
122
123=cut
124