Provided by: libdbix-class-schema-loader-perl_0.07039-1_all bug

NAME

       DBIx::Class::Schema::Loader::RelBuilder - Builds relationships for
       DBIx::Class::Schema::Loader

SYNOPSIS

       See DBIx::Class::Schema::Loader and DBIx::Class::Schema::Loader::Base.

DESCRIPTION

       This class builds relationships for DBIx::Class::Schema::Loader.  This is module is not
       (yet) for external use.

METHODS

   new
       Arguments: $loader object

   generate_code
       Arguments:

           [
               [ local_moniker1 (scalar), fk_info1 (arrayref), uniq_info1 (arrayref) ]
               [ local_moniker2 (scalar), fk_info2 (arrayref), uniq_info2 (arrayref) ]
               ...
           ]

       This generates the code for the relationships of each table.

       "local_moniker" is the moniker name of the table which had the REFERENCES statements.  The
       fk_info arrayref's contents should take the form:

           [
               {
                   local_table    => 'some_table',
                   local_moniker  => 'SomeTable',
                   local_columns  => [ 'col2', 'col3' ],
                   remote_table   => 'another_table_moniker',
                   remote_moniker => 'AnotherTableMoniker',
                   remote_columns => [ 'col5', 'col7' ],
               },
               {
                   local_table    => 'some_other_table',
                   local_moniker  => 'SomeOtherTable',
                   local_columns  => [ 'col1', 'col4' ],
                   remote_table   => 'yet_another_table_moniker',
                   remote_moniker => 'YetAnotherTableMoniker',
                   remote_columns => [ 'col1', 'col2' ],
               },
               # ...
           ],

       The uniq_info arrayref's contents should take the form:

           [
               [
                   uniq_constraint_name         => [ 'col1', 'col2' ],
               ],
               [
                   another_uniq_constraint_name => [ 'col1', 'col2' ],
               ],
           ],

       This method will return the generated relationships as a hashref keyed on the class names.
       The values are arrayrefs of hashes containing method name and arguments, like so:

         {
             'Some::Source::Class' => [
                 { method => 'belongs_to', arguments => [ 'col1', 'Another::Source::Class' ],
                 { method => 'has_many', arguments => [ 'anothers', 'Yet::Another::Source::Class', 'col15' ],
             ],
             'Another::Source::Class' => [
                 # ...
             ],
             # ...
         }

AUTHOR

       See "AUTHOR" in DBIx::Class::Schema::Loader and "CONTRIBUTORS" in
       DBIx::Class::Schema::Loader.

LICENSE

       This library is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

perl v5.18.1                                2014-01-0DBIx::Class::Schema::Loader::RelBuilder(3pm)