NAME
Data::MuForm::Field::Upload - file upload field
VERSION
version 0.02
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 Moo;
use Data::MuForm::Meta;
extends 'Data::MuForm';
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 = $c->req->body_parameters;
$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
layout_type
Layout type is 'upload'
AUTHOR
Gerda Shank
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.