Form::Sensible::Field::DateTime - A DateTime field type.
use Form::Sensible::Field::DateTime; my $object = Form::Sensible::Field::DateTime->new( span => datetime_span_object, recurrence => $recurrence_sub, ); $object->do_stuff(); my $object2 = Form::Sensible::Field::DateTime->new( span => datetime_span_object, recurrence => 'hourly', ); $object2->do_stuff();
The datetime field type is one of the more advanced field types in Form::Sensible. It uses DateTime::Format::Natural to format user input into a valid DateTime object, and uses DateTime::Set to allow date range numbers. It can be set to have a lower and upper bound, allowing validation to ensure that the value selected is within a range.
Finally, it can be rendered in a number of ways including select boxes, drop downs or even ranged-sliders if your renderer supports it. It can have a 'recurrence', which provides a constraint to what values are valid between the datetime span, otherwise it just returns the DateTime value set for the field.
A subroutine that is used when this field is used as a Select field. See the
from_recurrencemethod in DateTime::Set for more information on how you might structure the subroutine. Only useful when
spanis defined. As a convenience, if you pass the following strings, they will DWYM:
A DateTime::Span object that is used to represent the valid date range for this field.
Validates the field against the numeric constraints set for the field.
Returns a hashref consisting of the attributes for this field and their values.
The following two methods allow DateTime fields to be treated like Select Fields for rendering purposes.
An array ref containing the allowed options. Each option is represented as a hash containing a
nameelement and a
valueelement for the given option.
Sets whatever is the current
$self->valueoption as the selected option selected. This is used when a
DateTimefield is used as a
Selectfield and overrides Select's
On a Select field, this defines whether the field can have multiple values. For a DateTime field, only one value is allowed, so this always returns false.
David Romano - <email@example.com>
Ionzero LLC. http://ionzero.com/
Copyright (c) 2012 by Ionzero LLC
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 225:
You forgot a '=back' before '=head1'