my $grporg_rs = $schema->resultset('GrpOrg'); my $thing = [ $grporg_rs->search_rs( { }, { result_class => 'DBIx::Class::ResultClass::HashRefInflator', select => [ qw/me.org grp_own.owner/ ], join => 'grp_own', } )->search_rs( { }, { select => [ qw/groups.name/ ], join => 'groups' } )->all ];
i've also tried to use ->search_related. my schema looks like:
GrpOrg.pm:
__PACKAGE__->has_many(
"grp_own",
"Nais::Schema::Result::GrpOwn",
{ "foreign.org_id" => "self.id" },
{ cascade_copy => 0, cascade_delete => 0 },
);
GrpOwn.pm:
__PACKAGE__->has_many(
"groups",
"Nais::Schema::Result::Group",
{ "foreign.own_id" => "self.id" },
{ cascade_copy => 0, cascade_delete => 0 },
);
__PACKAGE__->belongs_to(
"grp_org",
"Nais::Schema::Result::GrpOrg",
{ id => "org_id" },
{ is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" },
);
Groups.pm:
__PACKAGE__->has_many(
"grp2ais",
"Nais::Schema::Result::Grp2ai",
{ "foreign.gpk" => "self.gpk" },
{ cascade_copy => 0, cascade_delete => 0 },
);