Подключаю в модели стороннюю таблицу и нужно подсчитать количество Order. Если делать Eager Loading, то получаю количество всех заказов, а отфильтровать по дате в hasMany не получается. Дата хранится в поле с форматом datetime (2021-12-31 00:00:00):
class View extends Model
{
use HasFactory;
protected $connection = 'modx';
protected $table = 'modx_site_partner_views';
protected $casts = [
'date' => 'datetime',
];
// Здесь нужно добавить условие, если вообще возможно
public function orders()
{
return $this->hasMany(Order::class, 'partner_id', 'partner_id');
}
// так получается по дополнительному запросу, но работает корректно
public function getTotalOrdersAttribute()
{
return $this->hasMany(Order::class, 'partner_id', 'partner_id')->whereDate('createdon', '=', $this->date)->count();
}
}