Я хотел бы иметь такую функциональность:
$parent->get_grandchildren_by_category({category => 'foo'});
Я могу сделать это легко вне родительского класса с помощью простого цепного соединения:
$schema->resultset('Parent')->search(
{
'me.id' => 62,
'grandchildren.category' => 'foo'
},
{
join => {'children' => 'grandchildren'}
}
);
Но внутри родительского класса у меня нет доступа (и не должен) к объекту схемы.
Внутри родительского класса я могу получить доступ к $self->children
, но он возвращает набор результатов для детей, и мне придется перебирать их, чтобы получить grandchildren
.
каждого
Есть ли способ определить этот стиль ActiveRecord?
class Parent < ActiveRecord::Base
has_many :children
has_many :grandchildren, :through => :children
end