NAME
   Catalyst::Model::FormFu - Speedier interface to HTML::FormFu for
   Catalyst

VERSION
   version 0.001

SYNOPSIS
       package MyApp
       {

           use parent 'Catalyst';

           __PACKAGE__->config( 'Model::FormFu' => {
               model_stash => { schema => 'MySchema' },
               constructor => { config_file_path => 'myapp/root/forms' },
               forms => {
                   form1 => 'form1.yaml',
                   form2 => 'form2.yaml',
               ]
           } );

       }

       package MyApp::Controller::WithForms
       {
           use parent 'Catalyst::Controller';

           sub edit :Local
           {
               my ($self, $c, @args) = @_;

               my $form1 = $c->model('FormFu')->form('form1');

               if ($form1->submitted_and_valid)
               ...
           }

       }

       package MyApp::Model::FormFu
       {
           use parent 'Catalyst::Model::FormFu';
       }

DESCRIPTION
   "Catalyst::Model::FormFu" is an alternative interface for using
   HTML::FormFu within Catalyst. It differs from
   Catalyst::Controller::HTML::FormFu in the following ways:

   *   It initializes all required form objects when your app is started,
       and returns clones of these objects in your actions. This avoids
       having to call "load_config_file" in HTML::FormFu and "populate" in
       HTML::FormFu every time you display a form, potentially leading to
       performance improvements in persistent applications.

   *   It does not inherit from Catalyst::Controller, and so is safe to use
       with other modules that do so, in particular
       Catalyst::Controller::ActionRole.

CONFIGURATION OPTIONS
   "Catalyst::Model::FormFu" accepts the following configuration options

   forms
       A hashref where keys are the names by which the forms will be
       accessed, and the values are the configuration files that will be
       loaded for the respective forms.

   constructor
       A hashref of options that will be passed to "HTML::FormFu->new(...)"
       for every form that is created.

   model_stash
       A hashref with a "stash" key whose value is the name of a Catalyst
       model class that will be place in the form stash for use by
       HTML::FormFu::Model::DBIC.

USAGE
   Use the "form" method of the model to fetch one or more forms by their
   names. The form is loaded with the current request parameters and
   processed.

SEE ALSO
   *   Catalyst::Controller::HTML::FormFu

   *   HTML::FormFu::Library

AUTHOR
   Peter Shangov <[email protected]>

COPYRIGHT AND LICENSE
   This software is copyright (c) 2011 by Peter Shangov.

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