Provided by: libclass-dbi-plugin-retrieveall-perl_1.04-4.1_all bug

NAME

       Class::DBI::Plugin::RetrieveAll - more complex retrieve_all() for Class::DBI

SYNOPSIS

               use base 'Class::DBI';
               use Class::DBI::Plugin::RetrieveAll;

               my @by_date = My::Class->retrieve_all_sorted_by("date");

               # or

               __PACKAGE__->retrieve_all_sort_field('date');

               my @by_date = My::Class->retrieve_all;

DESCRIPTION

       This is a simple plugin to a Class::DBI subclass that allows for simple sorting of the
       results of a retrieve_all().

       There are two main ways to use this.

       Firstly, we create a new method 'retrieve_all_sorted_by' which takes an argument of how to
       sort.

       We also add a method for 'retrieve_all_sort_field' that sets a default field that any
       retrieve_all() will use for sorting.

METHODS

   retrieve_all_sorted_by
               my @by_date = My::Class->retrieve_all_sorted_by("date");

       This method will be exported into the calling class, and allows for retrieving all the
       objects of the class, sorted by the given column.

       The argument given will be passed straight through to the database 'as is', and is not
       checked in any way, so an error here will usually in an error from the database, rather
       than Class::DBI itself.

       This makes it possible to pass more complex ORDER BY clauses through:

               my @by_date = My::Class->retrieve_all_sorted_by("date DESC, reference_no");

   retrieve_all_sort_field
         __PACKAGE__->retrieve_all_sort_field('date');

       This method changes the default retrieve_all() in the Class to be auto-sorted by the field
       given. Again this will be passed through directly, so you can have complex ORDER BY
       clauses.

AUTHOR

       Tony Bowden

BUGS and QUERIES

       Please direct all correspondence regarding this module to:
         bug-Class-DBI-Plugin-RetrieveAll@rt.cpan.org

COPYRIGHT and LICENSE

       Copyright (C) 2004-2006 Kasei. All rights reserved.

       This module is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.