NAME

HTML::FormHandler::Result - form result object

VERSION

version 0.40068

SYNOPSIS

This is the Result object that maps to the Form.

my $result = $self->form->run( $params );
my $result2 = $self->form->run( $other_params );

my $value = $result->field('title')->value;
my $fif = $result->fif;
my $field_fid = $result->field('title')->fif;

DESCRIPTION

Although not experimental, the 'results' have not been exercised as much as the other parts of the code. If there is missing functionality or things that don't work, please ask or report bugs.

The original FormHandler 'process' method, when used with persistent forms, leaves behind state data for a particular execution of 'process'. This is not optimal or clean from an architectural point of view. The intention with the 'result' object is to separate dynamic data from static. The 'form' object is treated as a kind of result factory, which will spit out results and leave the form in a consistent state.

In the current state of implementation, the result object can be used to render a form:

$result->render;

However there are still open questions about how much of the form/field should be forwarded to the result. At this point, the number of forwarded methods is minimal. Mechanisms to make this more customizable are being considered.

Dynamic select lists are not supported yet. Static select lists (that are the same for every form execution) should work fine, but lists that are different depending on some field value will not.

Most of this object is implemented in HTML::FormHandler::Result::Role, because it is shared with HTML::FormHandler::Field::Result.

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.