docs patch from dopplecoder with cleanups to Cookbook example
[dbsrgits/DBIx-Class-Historic.git] / README
CommitLineData
7e4b2f59 1NAME
2 DBIx::Class - Extensible and flexible object <-> relational mapper.
3
4SYNOPSIS
5DESCRIPTION
6 This is a sql to oop mapper, inspired by the Class::DBI framework, and
7 meant to support compability with it, while restructuring the insides,
8 and making it possible to support some new features like self-joins,
9 distinct, group bys and more.
10
11 It's currently considered EXPERIMENTAL - bring this near a production
12 database at your own risk! The API is *not* fixed yet, although most of
13 the primitives should be good for the future and any API changes will be
14 posted to the mailing list before they're committed.
15
16 The community can be found via -
17
18 Mailing list: http://lists.rawmode.org/mailman/listinfo/dbix-class/
19
20 SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
21
22 Wiki: http://dbix-class.shadowcatsystems.co.uk/
23
24 IRC: irc.perl.org#dbix-class
25
26QUICKSTART
8c130052 27 If you're using Class::DBI, and want an easy and fast way of migrating
28 to DBIx::Class look at DBIx::Class::CDBICompat.
7e4b2f59 29
8c130052 30 There are two ways of using DBIx::Class, the 'simple' and the 'schema'
31 one.
7e4b2f59 32
8c130052 33 The 'simple' way of using DBIx::Class needs less classes than the
34 'schema' way but doesn't give you the ability to use different database
35 connections.
7e4b2f59 36
8c130052 37 Some examples where different database connections are useful are:
7e4b2f59 38
8c130052 39 different users with different rights different databases with the same
40 schema.
7e4b2f59 41
8c130052 42Simple
43 First you need to create a base class all other classes inherit from.
7e4b2f59 44
8c130052 45 Look at DBIx::Class::DB how to do this
7e4b2f59 46
8c130052 47 Next you need to create a class for every table you want to use with
48 DBIx::Class.
7e4b2f59 49
8c130052 50 Look at DBIx::Class::Table how to do this.
7e4b2f59 51
8c130052 52 Schema
53 With this approach the table classes inherit directly from
54 DBIx::Class::Core, although it might be a good idea to create a 'parent'
55 class for all table classes which inherits from DBIx::Class::Core and
56 adds additional methods needed by all table classes, e.g. reading a
57 config file, loading auto primary key support.
7e4b2f59 58
8c130052 59 Look at DBIx::Class::Schema how to do this.
60
61 If you need more hand-holding, check out the introduction in the manual
62 below.
63
64SEE ALSO
65 DBIx::Class::Core - DBIC Core Classes
66 DBIx::Class::CDBICompat - Class::DBI Compat layer.
67 DBIx::Class::Manual - User's manual.
7e4b2f59 68
69AUTHOR
70 Matt S. Trout <mst@shadowcatsystems.co.uk>
71
72CONTRIBUTORS
73 Andy Grundman <andy@hybridized.org>
74
75 Brian Cassidy <bricas@cpan.org>
76
77 Dan Kubb <dan.kubb-cpan@onautopilot.com>
78
79 Dan Sully <daniel@cpan.org>
80
81 davekam
82
83 Marcus Ramberg <mramberg@cpan.org>
84
85LICENSE
86 You may distribute this code under the same terms as Perl itself.
87