.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "HTML::FormHandler::Render::Simple 3pm" .TH HTML::FormHandler::Render::Simple 3pm "2022-03-25" "perl v5.34.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" HTML::FormHandler::Render::Simple \- simple rendering role .SH "VERSION" .IX Header "VERSION" version 0.40068 .SH "SYNOPSIS" .IX Header "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. .PP For a 'MyApp::Form::Renderer' which you've created and modified, in your Form class: .PP .Vb 4 \& package MyApp::Form::Silly; \& use Moose; \& extends \*(AqHTML::FormHandler::Model::DBIC\*(Aq; \& with \*(AqMyApp::Form::Renderers\*(Aq; .Ve .PP In a template: .PP .Vb 1 \& [% form.render %] .Ve .PP The widgets are rendered with \f(CW\*(C`$field\->render\*(C'\fR; rendering routines from a class like this use \f(CW\*(C`$form\->render_field(\*(Aqfield_name\*(Aq)\*(C'\fR to render individual fields: .PP .Vb 1 \& [% form.render_field( \*(Aqtitle\*(Aq ) %] .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This role provides \s-1HTML\s0 output routines for the 'widget' types defined in the provided FormHandler fields. Each 'widget' name has a 'widget_$name' method here. .PP These widget routines output strings with \s-1HTML\s0 suitable for displaying form fields. .PP The widget for a particular field can be defined in the form. You can create additional widget routines in your form for custom widgets. .PP 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 .SS "render" .IX Subsection "render" To render all the fields in a form in sorted order (using \&'sorted_fields' method). .SS "render_start, render_end" .IX Subsection "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. .PP Will render the beginning and ending
tags and fieldsets. Allows for easy splitting up of the form if you want to hand-render some of the fields. .PP .Vb 5 \& [% form.render_start %] \& [% form.render_field(\*(Aqtitle\*(Aq) %] \& \& [% form.render_field(\*(Aqsome_field\*(Aq) %] \& [% form.render_end %] .Ve .SS "render_field" .IX Subsection "render_field" Render a field passing in a field object or a field name .PP .Vb 2 \& $form\->render_field( $field ) \& $form\->render_field( \*(Aqtitle\*(Aq ) .Ve .SS "render_text" .IX Subsection "render_text" Output an \s-1HTML\s0 string for a text widget .SS "render_password" .IX Subsection "render_password" Output an \s-1HTML\s0 string for a password widget .SS "render_hidden" .IX Subsection "render_hidden" Output an \s-1HTML\s0 string for a hidden input widget .SS "render_select" .IX Subsection "render_select" Output an \s-1HTML\s0 string for a 'select' widget, single or multiple .SS "render_checkbox" .IX Subsection "render_checkbox" Output an \s-1HTML\s0 string for a 'checkbox' widget .SS "render_radio_group" .IX Subsection "render_radio_group" Output an \s-1HTML\s0 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. .SS "render_textarea" .IX Subsection "render_textarea" Output an \s-1HTML\s0 string for a textarea widget .SS "render_compound" .IX Subsection "render_compound" Renders field with 'compound' widget .SS "render_submit" .IX Subsection "render_submit" Renders field with 'submit' widget .SH "AUTHOR" .IX Header "AUTHOR" FormHandler Contributors \- see HTML::FormHandler .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" This software is copyright (c) 2017 by Gerda Shank. .PP This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.