Maypole::FormBuilder 0.44 review
DownloadMaypole::FormBuilder is a Perl module with CGI::FormBuilder support in Maypole. SYNOPSIS use Maypole::Application qw( FormB
|
|
Maypole::FormBuilder is a Perl module with CGI::FormBuilder support in Maypole.
SYNOPSIS
use Maypole::Application qw( FormBuilder QuickTable );
BeerFB->config->model( 'Maypole::FormBuilder::Model' );
Maypole provides a great framework for simplifying the interaction between a UI and a database. But it provides very little support for simplifying the interface itself. Programmers are left to construct each form, widget by widget, using modules that don't support important form use cases, such as what to do when a form submits nothing for an empty field.
CGI::FormBuilder already supports this and many, many other forms use cases. And it provides validation methods, multiform support, and automatically generated Javascript validation code. And plenty more.
This distribution uses Class::DBI::FormBuilder to generate the metadata required to automatically build FormBuilder forms from CDBI classes and objects.
The distribution includes:
Maypole::FormBuilder
Introductory documentation only.
Maypole::Plugin::FormBuilder
as_form, search_form and as_forms methods for the Maypole request object.
Maypole::Plugin::FormBuilder.
Maypole::FormBuilder::Model
A model class based on Class::DBI. Note that this model does not inherit from Maypole::Model::CDBI.
Maypole::FormBuilder::Model.
Maypole::FormBuilder::Model::Base
Model methods that do not depend on the CDBI backend. Models based on a different persistence layer may wish to inherit from this class.
Maypole::FormBuilder::Model::Base.
templates
A new set of templates for the Beer database. These are considerably simpler than the BeerDB templates.
templates-mason Mason templates
templates-tt TT templates, donated by Ron McClain
Note that the templates also need Maypole::Plugin::QuickTable.
Also note, TT users must bless an object called mclass into $request->model_class and add it to the template vars in additional_data(). This is to make moniker work, which will always return Proxy if if you do [% mclass = Class(request.model_class) %] because Class creates a Proxy object around the model class.
Requirements:
Perl
Maypole::FormBuilder 0.44 search tags