Я определил атрибут в модели, который получает данные из другой таблицы, но я не определил связь между этими двумя таблицами:
Модель LeaseRequest
public function getSecurityDepositEntryAttribute() {
return Rent::where([
['property_id', $this->property_id],
['lease_request_id', $this->id],
['type', 'security_deposit_migration'],
])->orderBy('created_at', 'asc')->first();
}
Могу ли я теперь фильтроватьLeaseRequest
таблица с использованием этого атрибута?Я пробовал это, но получаю BadMethodCallException
:
LeaseRequest::whereHas('security_deposit_entry', function($query) {
$query->whereColumnNotIn('status', ['refund_in_process', 'refunded']);
})->get();
Если это невозможно, могу ли я определить отношения между этими двумя таблицами с помощью предопределенных предложений where
, как в атрибуте?