У меня есть класс журнала, имеющий полиморфную связь с объектом, который был создан, обновлен и удален.
Он работает для создания и обновления, но не для удаления.
Когда я вызываю это для удаления журнала, он возвращает Model not found
потому что это мягко удалено.
public function loggable()
{
return $this->morphTo();
}
public function getColorAttribute()
{
return $this->loggable->color;
}
Так что мне нужно игнорировать это softdelete для этого вызова, но как я могу это сделать?
Документация показывает только случай для отношений один ко многим.
Другим способом было бы написать собственный запрос, но я сначала хотел спросить, возможно ли это сделать таким образом.
Вы можете загрузить мягко удаленные модели с withTrashed ():
public function getColorAttribute()
{
return $this->loggable()->withTrashed()->first()->color;
}
Других решений пока нет …