Merge branch 'master' into topic/constructor_rewrite
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Relationship / HasMany.pm
index 21e637d..b8a9b4c 100644 (file)
@@ -49,11 +49,13 @@ sub has_many {
     $cond = { "foreign.${f_key}" => "self.${pri}" };
   }
 
+  my $default_cascade = ref $cond eq 'CODE' ? 0 : 1;
+
   $class->add_relationship($rel, $f_class, $cond, {
     accessor => 'multi',
     join_type => 'LEFT',
-    cascade_delete => 1,
-    cascade_copy => 1,
+    cascade_delete => $default_cascade,
+    cascade_copy => $default_cascade,
     %{$attrs||{}}
   });
 }