Skip to content

connoryates/Moosoderm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moosoderm

Generate DBIx::Class classes using Moo. Rework of Graham Barr's Mesoderm using Moo.

Moosoderm creates a scaffold of code for DBIx::Class using a schema object from SQL::Translator.

For when your project won't allow for Moose dependencies, but you still want a powerful database scaffold.

Features

  • All generated code is in a single file
  • Generated code is in a predicatable order, so diffs are easily readable
  • Separation between generated code and user written code
  • User code is written as Moo::Role classes
  • Complete control over class and relationship names
  • Ability to have class model exclude any table, column or relationship

Usage

  use Moosoderm;
  use SQL::Translator;
  use DBI;

  my $dbh = DBI->connect($dsn, $user, $pass);

  my $sqlt = SQL::Translator->new( parser_args => { dbh => $dbh }, from => 'DBI');
  $sqlt->parse(undef);

  my $scaffold = Moosoderm->new(
    schema       => $sqlt->schema,
    schema_class => 'My::Schema',
  );

  $scaffold->produce(\*STDOUT);

License

Perl 5

About

Moo adaptation of Mesoderm (Not Perl6)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages