|
NAMEHTML::Shakan - Form HTML generator/validatorSYNOPSISuse HTML::Shakan; sub form { my $req = shift; HTML::Shakan->new( fields => [ @_ ], request => $req, model => 'DataModel', ); } sub edit { my $req = shift; my $row = $model->get('user' => $req->param('id')); my $form = form( $req => ( TextField(name => 'name', label => 'Your name', filter => [qw/WhiteSpace/]), EmailField(name => 'email', label => 'Your email'), ), ); if ($req->submitted_and_valid) { $form->model->update($row); redirect('edit_thanks'); } else { $form->model->fill($row); render(form => $form); } } sub add { my $req = shift; my $form = form( $req => ( TextField(name => 'name', label => 'Your name'), EmailField(name => 'email', label => 'Your email'), ) ); if ($req->submitted_and_valid) { $form->model->insert($model => 'user'); redirect('edit_thanks'); } render(form => $form); } # in your template <? if ($form->has_error) { ?><div class="error"><?= $form->error_message() ?></div><? } ?> <form method="post" action="add"> <?= $form->render() ?> <p><input type="submit" value="add" /></p> </form> DESCRIPTIONHTML::Shakan is yet another form generator.THIS IS BETA.API WILL CHANGE. ATTRIBUTES
benchmarkingform generationRate formfu shakan shakan_declare formfu 1057/s -- -77% -84% shakan 4695/s 344% -- -31% shakan_declare 6757/s 539% 44% -- What's shakanShakan is XX in Japanese.If you want to know about shakan, please see <http://ja.wikipedia.org/wiki/%E5%B7%A6%E5%AE%98> XX should pronounce 'sakan', formally. but, edokko pronounce XX as shakan. METHODS
AUTHORTokuhiro Matsuno <tokuhirom @ gmail.com>SEE ALSOHTML::FormFuToscaWidgets LICENSEThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Visit the GSP FreeBSD Man Page Interface. |