Thanks Cory for your response, but I am quite familiar with all of
the online help.
After already consulting this and being able to write lots and lots
of good statements. I have noticed that when use the table object
and join it to a table it "belongs_to" I get the "Can't handle this
error"
But if I do the opposite join I do not get the error. Why??
__PACKAGE__->belongs_to('entry' => 'Cazy::Schema::Entry','entry_id');
__PACKAGE__->add_relationship('entry' =>
'Cazy::Schema::Entry','entry_id');
__PACKAGE__->might_have('entry_orgname' =>
'Cazy::Schema::EntryOrgname','entry_id');
__PACKAGE__->add_relationship('entry_orgname' =>
'Cazy::Schema::EntryOrgname','entry_id');
my $schema = Cazy::Schema;
my $entry_rs = $schema->resultset('Entry');
my $entryorg_rs = $schema->resultset('EntryOrgname');
my $query1 = $entryorg_rs->search(\%where,{join=>'entry'});
###DOESN'T WORK -- Throws error "Can't Handle This Yet"
my $query1 = $entry_rs->search(\%where,{join=>'entry_orgname'});
###DOES WORK
What I would really like to do is this statement:
my $query1 = $entryorg_rs->search(\%where,{
join=>{'entry'=>
{'fam_comp'=>'family'}}
'+select'=>
['entry.description','entry.note','entry.tax_id','entry.genome_id',
'family.fam_acc','family.subf','fam_comp.seq_begin','fam_comp.seq_end'],
'+as'=>
['entry_desc','entry_note','taxid','genome_id','fam_acc','subf','begin',
'end']
});
Is there a solution, without having to break up this query?
Brandi
On Oct 28, 2008, at 10:43 PM, Cory Watson wrote:
On 10/28/08, Brandi Cantarel <[EMAIL PROTECTED]> wrote:
I would like to join 2 tables using DBIx::Class but I get this error:
Can't handle this yet :(
when my starting table "belongs" to the second table?? I don't
understand, can I only join starting from tables where that table is
the owner of the primary key from which to join? I would actually
like to join many tables and would like to start the join with this
"belongs_to" table as I would if I were using simple DBI.
There is a one to one relationship between the two tables I would
like to join.
BTW, does anyone know how to "print" the SQL the program is
producing. Sometimes I get errors and I feel like looking at the
actual SQL would help alot.
Hi Brandi,
I think you might want to take a look at the DBIx::Class Cookcook:
http://search.cpan.org/perldoc?DBIx::Class::Manual::Cookbook
The "JOINS AND PREFETCHING" and "DEBUGGING AND PROFILING" sections
should get you going in the right direction!
--
Cory 'G' Watson
http://www.onemogin.com
_______________________________________________
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/dbix-
[EMAIL PROTECTED]
_______________________________________________
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]