Toby Corkindale wrote:
I think I have found a bug in find_or_create(), although maybe it's more a case of "it should throw an error if you try this", instead of silenting doing the Wrong Thing.Viz: Assume you have these tables: table1, with columns "luser" and "role". The primary key is on "luser, role". "role" is a foreign key into table2.. table2 has columns "id" and "name". my $rs = $schema->resultset('table1'); $rs->find_or_create( { luser => 'john', role => { name => 'Admin' }, } ); In this case, the SELECT that dbix class does to try and find the user will be WHERE luser='john' AND role=NULL.
Are you saying this is what DBIC does *now*? or this is part of a wishlist description? If this is in fact the SQL you see please let me know which DBIC version is this. _______________________________________________ List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class IRC: irc.perl.org#dbix-class SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/ Searchable Archive: http://www.grokbase.com/group/[email protected]
