В моем проекте Laravel
У меня есть Sale
модель с payments
Отношение
public function payments(): Relation
{
return $this->hasMany(Payment::class);
}
теперь я хочу эту функцию
private function getPaymentsQuery()
{
return $this
->payments()
->where('a', 1);
}
чтобы я мог связать его еще раз, как это
$sale->getPaymentsQuery()->where('b', 1)->get();
Идея работает, но функция getPaymentsQuery возвращает класс
\ Осветить \ Database \ Eloquent \ Отношения \ Relation;
но я хочу, чтобы оно было
\ Осветить \ Database \ Eloquent \ Builder
Потому что, как вы знаете, к Relation можно также обращаться как к свойству, а свойство можно использовать для быстрой загрузки, и это однажды приведет к ошибкам.