I was extending laravel model scope query using :
public function newEloquentBuilder($query)
{
return new FooBuilder($query);
}
public function newEloquentBuilder($query)
{
return new BarBuilder($query);
}
class FooBuilder extends Builder
{
public function joinBar()
{
return $this->leftJoin('bar', 'bar.id', '=', 'foo.id');
}
}
class BarBuilder extends Builder
{
public function whereActive()
{
return $this->where('is_active', true);
}
}
Is it possible to chain laravel model query like this?
Foo::query()->joinBar()->Bar::query()->whereActive()->get()
Basically, I want to call a method in BarBuilder from FooBuilder, i dont want to add duplicate same method inside FooBuilder.