Hello Monks,
I am having a problem with an attribute which isa DateTime. the error is:
Attribute (created_time) does not pass the type constraint because: Va
+lidation failed for 'DateTime' with value undef
here is the code:
class_type 'DateTime';
subtype 'My::Model::Support::Ticket::Str' => as 'Str';
subtype 'My::Model::Support::Ticket::Int' => as 'Int';
coerce 'DateTime',
from 'My::Model::Support::Ticket::Str',
via { DateTime::Format::DateParse->parse_datetime($_) };
coerce 'DateTime',
from 'My::Model::Support::Ticket::Int',
via { DateTime->from_epoch( epoch => $_ ) };
...
has created_time => (
is => 'rw',
isa => 'DateTime',
required => 0,
coerce => 1,
);
Without giving you a ton of code, what do you recommend that I do to try to debug this problem? I tried:
use MooseX::UndefTolerant::Attribute;
...
has created_time => (
traits => [qw(MooseX::UndefTolerant::Attribute)], #here
is => 'rw',
isa => 'DateTime',
required => 0,
coerce => 1,
);
But I ended up getting the error:
"exception" : "Type of argument to keys on reference must be unblessed
+ hashref or arrayref at /My/Model/Support/Ticket
Any insight is greatly appreciated :)