Revision history for Perl extension DBIx::Class::Schema::Loader
+ - $schema->loader is now a public method
- add schema_components option
- sort relationships so they always come out in the same order
- add rel_name_map option
requires 'File::Spec' => 0;
requires 'Scalar::Util' => 0;
+requires 'Task::Weaken' => 0;
requires 'Data::Dump' => '1.06';
requires 'Lingua::EN::Inflect::Number' => '1.1';
requires 'Lingua::EN::Tagger' => 0;
requires 'List::MoreUtils' => 0;
requires 'namespace::clean' => '0.20';
requires 'Scope::Guard' => 0;
-requires 'List::MoreUtils' => 0;
requires 'Exporter' => '5.63';
requires 'Try::Tiny' => 0;
- remove additional warnings skip in t/22dump.t for ActivePerl on Win32
- make 23dumpmore.t auto cleanup and remove dump warnings
- generate POD for schema class with class list
+ - remove implicit rels from common tests so all tests work on MySQL
+ - sort unique keys by name
+ - server link support for Oracle and MSSQL
- Relationships
- Re-scan relations/tables after initial relation setup to find
use strict;
use warnings;
use base qw/DBIx::Class::Schema Class::Accessor::Grouped/;
-use Carp::Clan qw/^DBIx::Class/;
use mro 'c3';
-use Scalar::Util qw/ weaken /;
+use Carp::Clan qw/^DBIx::Class/;
+use Scalar::Util 'weaken';
+use namespace::clean;
# Always remember to do all digits for the version even if they're 0
# i.e. first release of 0.XX *must* be 0.XX000. This avoids fBSD ports
=head1 METHODS
+=head2 loader
+
+The loader object, as class data on your Schema. For methods available see L<DBIx::Class::Schema::Loader::Base> and L<DBIx::Class::Schema::Loader::DBI>.
+
+=cut
+
+sub loader {
+ my $self = shift;
+ $self->_loader(@_);
+}
+
=head2 loader_class
=over 4
eval { $self->ensure_class_loaded($impl) };
croak qq/Could not load loader_class "$impl": "$@"/ if $@;
- $self->_loader($impl->new(%$args));
- $self->_loader->load;
+ $self->loader($impl->new(%$args));
+ $self->loader->load;
$self->_loader_invoked(1);
$self;
=cut
-sub rescan { my $self = shift; $self->_loader->rescan($self) }
+sub rescan { my $self = shift; $self->loader->rescan($self) }
=head2 naming