[Jifty-commit] r5403 - in Net-Jifty: .

Jifty commits jifty-commit at lists.jifty.org
Wed May 7 21:27:02 EDT 2008


Author: sartak
Date: Wed May  7 21:27:01 2008
New Revision: 5403

Modified:
   Net-Jifty/   (props changed)
   Net-Jifty/lib/Net/Jifty/Record.pm

Log:
 r55335 at onn:  sartak | 2008-05-07 21:26:38 -0400
 Some fixes in Net::Jifty::Record->load


Modified: Net-Jifty/lib/Net/Jifty/Record.pm
==============================================================================
--- Net-Jifty/lib/Net/Jifty/Record.pm	(original)
+++ Net-Jifty/lib/Net/Jifty/Record.pm	Wed May  7 21:27:01 2008
@@ -72,18 +72,28 @@
         ($column, $value) = ('id', $_[0]);
     }
     else {
-        confess "load called with no ID or (column, value) pair.";
+        confess "Please use load(interface, ID) or load(interface, column, value).";
     }
 
-    my $hash = eval { $interface->read($class->_model_class, $column, $value) };
+    my $hash = eval {
+        $interface->read($class->_default_model_class, $column, $value)
+    };
+    warn $@ if $@;
     return undef if !$hash;
 
+    # remove undef values (which trigger type constraint violations)
+    for (keys %$hash) {
+        delete $hash->{$_} if !defined($hash->{$_});
+    }
+
     return $class->new(
         _interface => $interface,
         %$hash,
     );
 }
 
+sub _default_model_class { shift->meta->get_attribute('_model_class')->default }
+
 __PACKAGE__->meta->make_immutable;
 no Moose;
 


More information about the Jifty-commit mailing list