Hi all,
With a bit of nudging, I had a head-smack moment and upgraded to the
latest version of DBIx::Class on CPAN, and it now looks like things
are working better for me, but I'm still getting some interesting
behavior.
Before I got errors, now I can do:
> ../bin/dbic-test.pl Emlen
DBIx::Class::ResultSet::_construct_results(): Unable to properly collapse
has_many results in iterator mode due to order criteria - performed an eager
cursor slurp underneath. Consider using ->all() instead at ../bin/dbic-test.pl
line 20
Full Name: Emlen & Howell (8213)
account_id=5920 boxfolder_id=234 URL: b16f10
account_id=5921 boxfolder_id=249 URL: b17f10
account_id=5922 boxfolder_id=281 URL: b19f12
Full Name: Emlen, Caleb (8214)
account_id=5923 boxfolder_id=14 URL: b01f14
account_id=5924 boxfolder_id=50 URL: b04f05
So I think I need to change my loop from:
while (my $r = $rs->next) {
print "Full Name: ", $r->full_name, " (", $r->name_id, ")\n";
foreach my $a ($r->account()) {
print " account_id=", $a->account_id();
print " boxfolder_id=",$a->boxfolder_id()," ";
my $t = $a->url();
$t =~ m/value2=(\w+)\&/;
print " URL: $1";
$vol = $a->boxfolder->volume;
$folder = $a->boxfolder->volume;
$range = $a->boxfolder->range;
print " V=$vol " if defined $vol;
print " F=$folder " if defined $folder;
print " R=$range " if defined $range;
print "\n";
}
}
To something more like this:
my @r = $rs->all
foreach my $r (@r) {
print "Full Name: ", $r->full_name, " (", $r->name_id, ")\n";
foreach my $a ($r->account()) {
print " account_id=", $a->account_id();
print " boxfolder_id=",$a->boxfolder_id()," ";
my $t = $a->url();
$t =~ m/value2=(\w+)\&/;
print " URL: $1";
$vol = $a->boxfolder->volume;
$folder = $a->boxfolder->volume;
$range = $a->boxfolder->range;
print " V=$vol " if defined $vol;
print " F=$folder " if defined $folder;
print " R=$range " if defined $range;
print "\n";
}
}
And that does seem to do the trick. Now to move onto updating my
Dancer web interface and see if I'm getting proper data out (or that I
even have proper data IN!) of the DB and displayed nicely for the end
users.
Thanks for the help, I feel a little dumb for not thinking to upgrade right off
the bat.
Cheers,
John
_______________________________________________
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]