Scroll to navigation

HTML::FormHandler::Field::Upload(3pm) User Contributed Perl Documentation HTML::FormHandler::Field::Upload(3pm)

NAME

HTML::FormHandler::Field::Upload - file upload field

VERSION

version 0.40068

DESCRIPTION

This field is designed to be used with a blessed object with a 'size' method, such as Catalyst::Request::Upload, or a filehandle. Validates that the file is not empty and is within the 'min_size' and 'max_size' limits (limits are in bytes). A form containing this field must have the enctype set.

    package My::Form::Upload;
    use HTML::FormHandler::Moose;
    extends 'HTML::FormHandler';
    has '+enctype' => ( default => 'multipart/form-data');
    has_field 'file' => ( type => 'Upload', max_size => '2000000' );
    has_field 'submit' => ( type => 'Submit', value => 'Upload' );

In your controller:

    my $form = My::Form::Upload->new;
    my @params = ( file => $c->req->upload('file') )
             if $c->req->method eq 'POST';
    $form->process( params => { @params } );
    return unless ( $form->validated );

You can set the min_size and max_size limits to undef if you don't want them to be validated.

DEPENDENCIES

widget

Widget type is 'upload'

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.

2022-03-25 perl v5.34.0