Fix to find for complex resultsets
Matt S Trout [Sun, 5 Feb 2006 15:28:51 +0000 (15:28 +0000)]
lib/DBIx/Class/ResultSet.pm

index a10b504..c7a9cc5 100644 (file)
@@ -224,13 +224,17 @@ sub find {
 
   my $query;
   if (ref $vals[0] eq 'HASH') {
-    $query = $vals[0];
+    $query = { %{$vals[0]} };
   } elsif (@cols == @vals) {
     $query = {};
     @{$query}{@cols} = @vals;
   } else {
     $query = {@vals};
   }
+  foreach (keys %$query) {
+    next if m/\./;
+    $query->{$self->{attrs}{alias}.'.'.$_} = delete $query->{$_};
+  }
   #warn Dumper($query);
   return $self->search($query)->next;
 }