2つのテーブル(用語と定義)の単純なケースを考えると、用語has_many
定義と定義belongs_to
用語では、すべての用語と対応する定義がフェッチされ、何らかの方法で表示されます。
これが私がこれまでに思いついたものです:
my $terms= $schema->resultset('Term')->search(undef, {
prefetch => 'definitions',
});
while (my $term = $terms->next) {
my @terms;
push @terms, $term->term;
my $definitions = $term->definitions;
my @definitions;
while (my $definition = $definitions->next) {
push @definitions, $definitions;
}
...
}
それは仕事をしますが、私は別の、より粗雑でないアプローチをとることができるかどうか疑問に思いました。