/Gideon

Datamapper written in Perl

Primary LanguagePerl

NAME

Gideon - ORM written in Perl

VERSION

alpha

SYNOPSIS

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' } );

DESCRIPTION

Yet to come ...

SUPPORT

Bugs / Feature Requests

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.

LIMITATIONS

CURRENT ENGINES SUPPORTED

  • DBI

    • MySQL

    • SQLIte

  • Storable (veeery basic)

  • MongoDB

DEPENDENCIES

  • Mouse

  • Try::Tiny

  • Set::Array

  • DBI

  • SQL::Abstract

  • Test::Exception

  • Test::More

  • Data::Dumper

Source Code

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

COPYRIGHT AND LICENSE

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.