]> Dogcows Code - chaz/p5-DBIx-Class-ResultSet-RecursiveUpdate/blobdiff - lib/DBIx/Class/ResultSet/RecursiveUpdate.pm
skip trying to create a might_have relationship if there is no data to insert
[chaz/p5-DBIx-Class-ResultSet-RecursiveUpdate] / lib / DBIx / Class / ResultSet / RecursiveUpdate.pm
index 1af66cca62b80357ee7abdc0db53cf7ccc0c759d..eeec84cdd240e2007b07101c2d3cd784f184ce62 100644 (file)
@@ -208,15 +208,17 @@ sub _update_relation {
                     object =>  $object->$name 
                 );
             }
-            else{ 
+            else{
                 $sub_object =
                 recursive_update( resultset => $related_result, updates => $sub_updates, resolved => $resolved );
             }
         }
         elsif( ! ref $sub_updates ){
-            $sub_object = $related_result->find( $sub_updates );
+            $sub_object = $related_result->find( $sub_updates ) 
+             unless (!$sub_updates && ($info->{attrs}{join_type} eq 'LEFT'));
         }
-        $object->set_from_related( $name, $sub_object );
+        $object->set_from_related( $name, $sub_object )
+          unless (!$sub_object && !$sub_updates && ($info->{attrs}{join_type} eq 'LEFT'));
     }
 }
 
This page took 0.020643 seconds and 4 git commands to generate.