Laravel использование this->field в relationship

У меня есть таблица havings, rigs и parts. В таблице havings есть поле part_id, по которому можно получить доступ к part, которая привязана к havings. В таблице rigs всё немного сложнее - несколько полей: GPU_id, RAM_id ...

Итак, в модели Having определено отношение hasOne для модели Part. Как определить отношение в модели Having для модели Rig?

 public function rig() {
    return $this->hasOne(Rig::class, $this->part->type . '_id', 'id');
}

Я пробовал так, но это работает почему-то только для GPU_id, если type = RAM, то rig = null. А если вывести dump($this->part->type), то выводится 1 строка - GPU

Вот мои таблицы (между having и part есть таблица part_shop, но это роли не играет в этом вопросе)

введите сюда описание изображения введите сюда описание изображения введите сюда описание изображения


Ответы (0 шт):