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