The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

DBIx::Class::Loader::Writing - Loader subclass writing guide

SYNOPSIS

package DBIx::Class::Loader::Foo;

# THIS IS JUST A TEMPLATE TO GET YOU STARTED.

use strict;
use base 'DBIx::Class::Loader::Generic';
use DBI;
use Carp;

sub _db_classes {
    return qw/DBIx::Class::PK::Auto::Foo/;
        # You may want to return more, or less, than this.
}

sub _tables {
    my $self = shift;
    my $dbh = DBI->connect( @{ $self->{_datasource} } )
         or croak($DBI::errstr);
    return $dbh->tables; # Your DBD may need something different
}

sub _table_info {
    my ( $self, $table ) = @_;
    ...
    return ( \@cols, \@primary );
 }

 sub _relationships {
    my $self = shift;
    ...
    $self->_belongs_to_many($table, $f_key, $f_table);
        # For each relationship you want to set up
    ...
  }