NAME

CatalystX::CRUD - CRUD framework for Catalyst applications

DESCRIPTION

This document is an overview of the CatalystX::CRUD framework and API.

CatalystX::CRUD provides a simple and generic API for Catalyst CRUD applications. CatalystX::CRUD is agnostic with regard to data model and data input, instead providing a common API that different projects can implement for greater compatability with one another.

The project was born out of a desire to make Rose::HTML::Objects easy to use with Rose::DB::Object and DBIx::Class ORMs, using the Catalyst::Controller::Rose project. However, any ORM could implement the CatalystX::CRUD::Model API, and any form management project could use the resulting CatalystX::CRUD::Model subclass.

METHODS

This class provides some basic methods that Model and Object subclasses inherit.

has_errors( context )

Returns true if context error() method has any errors set or if the error value in stash() is set. Otherwise returns false (no errors).

throw_error( msg )

Throws exception using Carp::croak (confess() if CATALYST_DEBUG env var is set). Override to manage errors in some other way.

NOTE that if in your subclass throw_error() is not fatal and instead returns a false a value, methods that call it will, be default, continue processing instead of returning. See fetch() for an example.

AUTHOR

Peter Karman, <perl at peknet.com>

BUGS

Please report any bugs or feature requests to bug-catalystx-crud at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=CatalystX-CRUD. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc CatalystX::CRUD

You can also look for information at:

ACKNOWLEDGEMENTS

Thanks to Zbigniew Lukasiak and Matt Trout for feedback and API ideas.

COPYRIGHT & LICENSE

Copyright 2007 Peter Karman, all rights reserved.

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