Так вот мои модели:Laravel 5,2 - имеет один через или пользовательский атрибут
EmployerHours
belongsToReport
Report
belongsToEmployer
Существовало много мест, где мы делали $employerHour->report->employer
, чтобы получить работодатель привязан к EmployerHour
. (имейте в виду, что у меня нет возможности изменить схему). Я решил сделать следующее на EmployerHour
модели:
/**
* Attribute for retrieving the Employer directly from employer hours
* @return App\Models\Employer
*/
public function getEmployerAttribute()
{
return $this->report->employer;
}
Это почти похоже на хак. Однако есть много раз, когда это происходит, и это стало полезным. Я думал, что ДОЛЖЕН быть отношения hasOneThrough
, но это не похоже. Правильно ли это, или я что-то упускаю?