HTML::FormHandler::Blocks - arrange form layout using blocks


version 0.40068


This is a role which provides the ability to render your form in arbitrary 'blocks', instead of by fields. This role is included by default in HTML::FormHandler.

    package MyApp::Form;
    use HTML::FormHandler::Moose;
    extends 'HTML::FormHandler';

    sub build_render_list {[ 'foo', 'fset' ]}
    has_field 'foo';
    has_field 'bar';
    has_field 'nox';
    has_block 'fset' => ( tag => 'fieldset', render_list => ['bar', 'nox'] );;

Blocks live in the HTML::FormHandler::Widget::Block:: namespace. The default, non-typed block is HTML::FormHandler::Widget::Block. Provide a type for custom blocks:

    has_block 'my_block' => ( type => 'CustomBlock', render_list => [...] );

You can also build blocks with a 'block_list' attribute, or the builder for it, 'build_block_list'.

Rendering with blocks is supported by the rendering widgets. Render::Simple doesn't do it, though it would be possible to make your own custom renderer.


FormHandler Contributors - see HTML::FormHandler


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.