surface with_recursive as well
Matt S Trout [Thu, 25 Apr 2019 15:01:18 +0000 (15:01 +0000)]
lib/DBIx/Class/SQLMaker/SQLA2Support.pm

index c35bda9..82f2a16 100644 (file)
@@ -13,9 +13,10 @@ sub select {
   my $self = shift;
   my ($sql, @bind) = $self->next::method(@_);
   my (undef, undef, undef, $attrs) = @_;
-  if (my $with = delete $attrs->{with}) {
+  if (my $with = delete $attrs->{with} or my $wrec = delete $attrs->{with_recursive}) {
+    die "Can't have with and with_recursive at once" if $with and $wrec;
     my ($wsql, @wbind) = @{ $self->render_statement({
-      -select => { with => $with }
+      -select => ($with ? { with => $with } : { with_recursive => $wrec })
     }) };
     unshift @bind, @wbind;
     $sql = "${wsql} ${sql}";