schema-loader now uses Class::C3, and ::Pg uses that to override ::Generic->new(...
[dbsrgits/DBIx-Class-Schema-Loader.git] / lib / DBIx / Class / Schema / Loader / Pg.pm
index 0d49c95..ec4a221 100644 (file)
@@ -2,6 +2,8 @@ package DBIx::Class::Schema::Loader::Pg;
 
 use strict;
 use warnings;
+use Class::C3;
+
 use base 'DBIx::Class::Schema::Loader::Generic';
 
 =head1 NAME
@@ -23,8 +25,24 @@ DBIx::Class::Schema::Loader::Pg - DBIx::Class::Schema::Loader Postgres Implement
 
 See L<DBIx::Class::Schema::Loader>.
 
+=head1 METHODS
+
+=head3 new
+
+Overrides L<DBIx::Class::Schema::Loader::Generic>'s C<new()> to default the postgres
+schema to C<public> rather than blank.
+
 =cut
 
+sub new {
+    my ($class, %args) = @_;
+
+    my $self = $class->next::method(%args);
+    $self->{db_schema} ||= 'public';
+
+    $self;
+}
+
 sub _db_classes {
     return qw/DBIx::Class::PK::Auto::Pg/;
 }