This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.cvsignore | ||
| |
.screenrc | ||
| |
Changes | ||
| |
GNUmakefile | ||
| |
MANIFEST | ||
| |
Makefile.PL | ||
| |
README | ||
| |
lib/ | ||
| |
t/ |
README
NAME
DBICx::Modeler - A Moose-based model layer over DBIx::Class
VERSION
Version 0.005
SYNOPSIS
# Given the following schema:
My::Schema::Artist
My::Schema::Cd
My::Schema::Track
# ... and the following model:
My::Model::Artist
use DBICx::Modeler::Model
My::Model::Cd ...
My::Model::Track ...
...
my $modeler = DBICx::Modeler->new( schema => ..., namespace => My::Model );
my $artist = $modeler->create( Artist => { ... } ) # $artist is My::Model::Artist
my $cd = $artist->create_related( cds => { ... } ) # $cd is My::Model::Cd
...
my $search = $artist->cds( { title => ... } ) # Start a search ...
$search->search( { ... } ) # Refine the search ...
my @cds = $search->slice( 0, 9 ) # Get the first 10
# Each is of type My::Model::Cd
DESCRIPTION
DBICx::Modeler is tool for making a thin, Moose-based model layer over a
DBIx::Class schema
CAVEAT EMPTOR
Many-to-many is not handled
Many-to-many relationships are ignored, for now. You'll have to access
"_model__storage" (which is the DBIx::Class::Row) if you want to play
with them
The same storage object can be present in different model objects
# With the following example:
$artist->cds( ... )->slice( 0 )->artist # $artist and ->artist are different objects
This shouldn't be too difficult to fix.
The modeler will probably barf when trying to modify immutable Model:: classes
This shouldn't be too difficult to fix, either.
Use "DBIC_MODELER" to trace modeler setup
Set "DBIC_MODELER" to 1 if you want to trace what is going on in the
modeler internally
$ENV{DBIC_MODELER} = 1
METHODS
DBICx::Modeler->new( ... )
schema The connected DBIx::Class schema to use/inspect
namespace The package containing the Moose classes that will mimic the class structure of <schema>
$modeler->model( <moniker> )
Return the model source for <moniker>
$modeler->create( <moniker> => ... )
Create a new row for <moniker> and return the modeled object
$modeler->search( <moniker> => ... )
Make a search of <moniker> that will inflate into modeled objects
AUTHOR
Robert Krimen, "<rkrimen at cpan.org>"
BUGS
Please report any bugs or feature requests to "bug-dbicx-modeler at
rt.cpan.org", or through the web interface at
<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=DBICx-Modeler>. I will
be notified, and then you'll automatically be notified of progress on
your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc DBICx::Modeler
You can also look for information at:
* RT: CPAN's request tracker
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=DBICx-Modeler>
* AnnoCPAN: Annotated CPAN documentation
<http://annocpan.org/dist/DBICx-Modeler>
* CPAN Ratings
<http://cpanratings.perl.org/d/DBICx-Modeler>
* Search CPAN
<http://search.cpan.org/dist/DBICx-Modeler/>
ACKNOWLEDGEMENTS
COPYRIGHT & LICENSE
Copyright 2009 Robert Krimen, all rights reserved.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.








