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