Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
HTML::FormHandler::ManUser:Contributed PerHTML::FormHandler::Manual::Errors(3)

NAME
       HTML::FormHandler::Manual::Errors - FormHandler error methods

VERSION
       version 0.40067

SYNOPSIS
       Manual Index

       Errors and error	messages for HTML::FormHandler.

DESCRIPTION
       Errors are added	to field or form objects by the	field 'add_error'
       method or the form 'add_form_error' method. FormHandler will perform
       the 'add_error' for you for built-in validation or 'apply' actions.
       When performing your own	validation in a	validation method, you must do
       the 'add_error' yourself.

       Errors, along with 'input' and 'value' attributes, are collected	in the
       FormHandler 'result' objects. A number of error retrieving methods are
       delegated to the	field and form classes.

       The existence (or not) of errors	determines whether or not the form has
       been 'validated'.

Form methods
       errors
	   Returns an array of localized error strings (both field and form
	   errors):

	       my @errors = $form->errors;

	   Note: this is a form	method,	not a result method. For the same
	   thing from a	result object, use "$result->form_and_field_errors".

       has_errors
	   Both	'form' errors and errors from the tree of subfields

	       if( $form->has_errors ) {
		   <do something>
	       }

       form_errors, all_form_errors
	   Returns an arrayref / array of error	strings	on the form (not
	   including field errors).

	       foreach my $err ( $self->all_form_errors	) {
		   $output .= "<span class="error">$err</span>";
	       }

       has_form_errors
	   Does	the form have form_errors?

       add_form_error
	   Add an error	to the form which is not associated with a specific
	   field.

	       sub validate {
		   my $self = shift;
		   unless( <some condition> ) {
		       $self->add_form_error('....');
		   }
	       }

       push_form_errors
	   Add a non-localized error to	the form.

Field methods
       The most	common error method is probably	'add_error', which you use in
       the validation process.

	   sub validate_foo {
	       my ( $self, $field ) = @_;
	       unless (	<some_condition> ) {
		   $field->add_error('Error condition');
	       }
	   }

       errors
	   Returns an array of error strings.

       has_errors
	   Does	the field have errors? Note that a compound field that
	   contains subfields with errors will not return true for this
	   method. If you want to know if there	are errors in the subfields,
	   do 'has_error_fields'.

       num_errors
       add_error
	   Add an error	to the field. Localization is performed.

       push_errors
	   Add an error	without	localization.

       error_fields
	   In a	compound field (and its	subclasses, like 'Repeatable'),	the
	   list	of fields with errors.

Result methods
       The input, value, and error attributes are actually stored in the
       result objects. Although	most of	the methods are	delegated to the form
       and field classes, there	are times, such	as when	rendering (because you
       might be	rendering a result that's been peeled off of the form object),
       that you	may need to use	result methods.

       These are the main methods that you might need to use.

       has_errors
       errors
       error_results
	   The results with errors; 'error_fields' is a	wrapper	around this.

Messages
       The base	field class and	the field subclasses have some 'built-in'
       error messages.	These can be modified by setting the 'messages'
       hashref in the form or the individual fields.

       When a message is retrieved in a	field with
       "$field->get_message('upload_file_')" for example, the 'get_message'
       method will look	first in user-set field	specific messages, then	in
       user-supplied form messages, finally in messages	provided by the	field
       classes.

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

	  sub build_messages {
	      return { required	=> '....', my_message => '....'	};
	  }
	  ...
	  my $form = MyApp::Form->new( messages	=> { required => '...',	...} );
	  ...
	  has_field 'my_field' => ( messages =>	{ required => 'Please provide a	my_field' },
	      required => 1 );

AUTHOR
       FormHandler Contributors	- see HTML::FormHandler

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2016 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.

perl v5.24.1			  2016-10-HTML::FormHandler::Manual::Errors(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | Form methods | Field methods | Result methods | Messages | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=HTML::FormHandler::Manual::Errors&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help