Tie-DBIx-Class DBIx::Class puts a SQL row into a simple object and masks all SQL from you scripts, but it's strictly database based. Imagine you got a house: my $house = House->new(1); $house->open_door(); $house could be a SQL row, but what if you'ld like to add methods or sub-objects which aren't SQL rows? Here is what Tie-DBIx-Class is for: package House; sub new { my $class = shift; my $house_id = shift; tie(my %row,'Tie::DBIx::Class',$main::schema,'houses',$house_id); return bless \row,$class; } sub open_door { # Access the door controller } Every column is accessible as a hash key of the blessed object while you're still free to define additional methods. In addition, Tie::DBIx::Class waits for the first access to the hash's data before actually fetching the data from the database - saving resources in case you just want to open the door and don't need the SQL row's data at all. Tie::DBIx::Class has been developed for use with Template::Toolkit. Templates may get access to database rows without the need to preload everything which might be used by a template. Just create the objects and push them to Template::Toolkit and the required rows will be loaded automatically. INSTALLATION To install this module, run the following commands: perl Makefile.PL make make test make install SUPPORT AND DOCUMENTATION After installing, you can find documentation for this module with the perldoc command. perldoc Tie::DBIx::Class You can also look for information at: RT, CPAN's request tracker http://rt.cpan.org/NoAuth/Bugs.html?Dist=Tie-DBIx-Class AnnoCPAN, Annotated CPAN documentation http://annocpan.org/dist/Tie-DBIx-Class CPAN Ratings http://cpanratings.perl.org/d/Tie-DBIx-Class Search CPAN http://search.cpan.org/dist/Tie-DBIx-Class/ COPYRIGHT AND LICENCE Copyright (C) 2010 Sebastian Willing This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.