Gideon - ORM written in Perl
alpha
use DBI;
use Gideon;
my $dbh = DBI->connect( "dbi:mysql:database=test;host=;port=", "test", "" );
Gideon->register_store( 'mysql_server', $dbh );
or
Gideon->register_store( 'mysql_server', MyApp::Driver::MySQL->new(
db => 'test',
username => 'test',
host => 'localhost'
));
then
my $results = MyApp::Persons->find_all( name => { like => 'Doe' } );
Yet to come ...
Don't try to use Gideon just yet, is not even an alpha version
Its purpose is to provide persistence using Moose-type objects without worrying about storage format. Goal is to store objects without changing their class definitions, no schemas required just plain Perl classes with Mouse::Meta::Attribute::Custom extensions. It doesn't provide joins between two objects right now.
CURRENT ENGINES SUPPORTED
DBI
MySQL
SQLIte
Storable (veeery basic)
MongoDB
Mouse
Try::Tiny
Set::Array
DBI
SQL::Abstract
Test::Exception
Test::More
Data::Dumper
This is open source software. The code repository is available for public review and contribution under the terms of the license.
https://github.com/ginesr/Gideon
git clone https://github.com/ginesr/Gideon.git
This software is copyright (c) 2012 by Gines Razanov.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.