X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController%2FDBIC%2FAPI.pm;h=acc8722ff767869ef2f12a25a9bab266f881df3a;hb=02b625cd434826ea7cc013dcd7a2a2eda1eb8476;hp=66d775e963612903ca67ba6d495e580be5e5408f;hpb=d8921389b13be6d1126ffa240b0a795541e30273;p=catagits%2FCatalyst-Controller-DBIC-API.git diff --git a/lib/Catalyst/Controller/DBIC/API.pm b/lib/Catalyst/Controller/DBIC/API.pm index 66d775e..acc8722 100644 --- a/lib/Catalyst/Controller/DBIC/API.pm +++ b/lib/Catalyst/Controller/DBIC/API.pm @@ -374,6 +374,7 @@ sub list =method_protected list_munge_parameters list_munge_parameters is a noop by default. All arguments will be passed through without any manipulation. In order to successfully manipulate the parameters before the search is performed, simply access $c->req->search_parameters|search_attributes (ArrayRef and HashRef respectively), which correspond directly to ->search($parameters, $attributes). Parameter keys will be in already-aliased form. +To store the munged parameters call $c->req->_set_search_parameters($newparams) and $c->req->_set_search_attributes($newattrs). =cut @@ -634,7 +635,7 @@ sub validate_object } # check for multiple values - if (ref($value) && !($value == JSON::Any::true || $value == JSON::Any::false)) + if (ref($value) && !(reftype($value) eq reftype(JSON::Any::true))) { require Data::Dumper; die "Multiple values for '${key}': ${\Data::Dumper::Dumper($value)}"; @@ -718,7 +719,7 @@ sub save_object =method_protected update_object_from_params -update_object_from_params iterates through the params to see if any of them are pertinent to relations. If so it calls L with the object, and the relation parameters. Then it calls ->upbdate on the object. +update_object_from_params iterates through the params to see if any of them are pertinent to relations. If so it calls L with the object, and the relation parameters. Then it calls ->update on the object. =cut @@ -729,7 +730,7 @@ sub update_object_from_params foreach my $key (keys %$params) { my $value = $params->{$key}; - if (ref($value) && !($value == JSON::Any::true || $value == JSON::Any::false)) + if (ref($value) && !(reftype($value) eq reftype(JSON::Any::true))) { $self->update_object_relation($c, $object, delete $params->{$key}, $key); } @@ -769,7 +770,7 @@ sub insert_object_from_params my %rels; while (my ($k, $v) = each %{ $params }) { - if (ref $v && !($v == JSON::Any::true || $v == JSON::Any::false)) { + if (ref($v) && !(reftype($v) eq reftype(JSON::Any::true))) { $rels{$k} = $v; } else { @@ -863,7 +864,7 @@ sub each_object_inflate { my ($self, $c, $object) = @_; - return { $object->get_inflated_columns }; + return { $object->get_columns }; } # from Catalyst::Action::Serialize