hi Может ли этот код быть рефакторингом?
public function all(array $attributes)
{
$rates = $this->model->query()->where([
['able_type', $attributes['type']],
['able_id', $attributes['type_id']]
])
->get(['rate']);
return [
'count' => $rates->count(),
'average' => $rates->avg('rate')
];
}
public function show($attributes)
{
$result = $this->model->query()->where([
['user_id', $attributes['user_id']],
['able_type', $attributes['type']],
['able_id', $attributes['type_id']]
])
->first();
return $result;
}
Можно ли написать оператор where таким образом, чтобы его не нужно было повторять?