table of contents
HTML::FormHandler::Render::Simple(3) | User Contributed Perl Documentation | HTML::FormHandler::Render::Simple(3) |
NAME¶
HTML::FormHandler::Render::Simple - simple rendering role
VERSION¶
version 0.40068
SYNOPSIS¶
This is a Moose role that is an example of a simple rendering routine for HTML::FormHandler. It's here as an example of how to write a custom renderer in one package, if you prefer that to using the widgets. It won't always be updated with improvements by default, because it was becoming a lot of work to update the rendering in multiple places.
For a 'MyApp::Form::Renderer' which you've created and modified, in your Form class:
package MyApp::Form::Silly; use Moose; extends 'HTML::FormHandler::Model::DBIC'; with 'MyApp::Form::Renderers';
In a template:
[% form.render %]
The widgets are rendered with "$field->render"; rendering routines from a class like this use "$form->render_field('field_name')" to render individual fields:
[% form.render_field( 'title' ) %]
DESCRIPTION¶
This role provides HTML output routines for the 'widget' types defined in the provided FormHandler fields. Each 'widget' name has a 'widget_$name' method here.
These widget routines output strings with HTML suitable for displaying form fields.
The widget for a particular field can be defined in the form. You can create additional widget routines in your form for custom widgets.
The fill-in-form values ('fif') are cleaned with the 'render_filter' method of the base field class. You can change the filter to suit your own needs: see HTML::FormHandler::Manual::Rendering
render¶
To render all the fields in a form in sorted order (using 'sorted_fields' method).
render_start, render_end¶
These use the methods in HTML::FormHandler::Widget::Form::Simple now. If you want to customize them, copy them to your own package.
Will render the beginning and ending <form> tags and fieldsets. Allows for easy splitting up of the form if you want to hand-render some of the fields.
[% form.render_start %] [% form.render_field('title') %] <insert specially rendered field> [% form.render_field('some_field') %] [% form.render_end %]
render_field¶
Render a field passing in a field object or a field name
$form->render_field( $field ) $form->render_field( 'title' )
render_text¶
Output an HTML string for a text widget
render_password¶
Output an HTML string for a password widget
render_hidden¶
Output an HTML string for a hidden input widget
render_select¶
Output an HTML string for a 'select' widget, single or multiple
render_checkbox¶
Output an HTML string for a 'checkbox' widget
render_radio_group¶
Output an HTML string for a 'radio_group' selection widget. This widget should be for a field that inherits from 'Select', since it requires the existence of an 'options' array.
render_textarea¶
Output an HTML string for a textarea widget
render_compound¶
Renders field with 'compound' widget
render_submit¶
Renders field with 'submit' widget
AUTHOR¶
FormHandler Contributors - see HTML::FormHandler
COPYRIGHT AND LICENSE¶
This software is copyright (c) 2017 by Gerda Shank.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2017-07-21 | perl v5.40.0 |