On 05/28/2012 05:07 AM, David Precious wrote:
On Fri, 25 May 2012 11:02:00 -0400 <gizmomathboy@gmail.com> wrote:
Is there a way to access multiple tables using SimpleCRUD without using foreign keys?
I have a relatively small database with a 3 tables or so but I don't have foreign keys between the tables.
Not currently; I've been working on such abilities, but it's awaiting further tuits. The progress so far is in the feature/foreignkeys branch of the repo:
https://github.com/bigpresh/Dancer-Plugin-SimpleCRUD
Despite the name, it will work even if they are not designated as foreign keys in the database.
It's fairly basic so far.
I hope to have time to work on this module further soon, but I've been busy with various stuff lately which has taken time away from personal coding projects.
I created a rather ugly hack to do what I need. --- SimpleCRUD.pm 2012-06-03 22:12:36.257043296 -0400 +++ SimpleCRUD-orig-with-gizmo.pm 2012-06-03 22:16:24.490175040 -0400 @@ -260,6 +260,18 @@ sub simple_crud { my (%args) = @_; + if ( exists $args{prefix} ) { + _create_simple_crud_routes(%args); + } + else { + for my $args ( @_ ) { + _create_simple_crud_routes(%$args); + } + } +} + +sub _create_simple_crud_routes { + my (%args) = @_; # Get a database connection to verify that the table name is OK, etc. my $dbh = database($args{db_connection_name}); The call goes from: simple_crud ( prefix => '/table1', record_title => 'Table1', db_table => 'table1', ); to simple_crud ( { prefix => '/table1', record_title => 'Table1', db_table => 'table1', }, { prefix => '/table2', record_title => 'Table2', db_table => 'table2', }, ); Yeah, ugly. Now to do a pull request and look at that branch... gizmo