忽略多态关系的softdelete doens工作

时间:2016-01-09 13:34:14

标签: php laravel laravel-5 laravel-5.2 soft-delete

我有一个日志类,它与创建,更新和删除的对象具有多态关系。

它正在创建和更新但不是删除。

当我为删除日志调用它时,它返回Model not found,因为它被软删除。

public function loggable()
{
    return $this->morphTo();
}

public function getColorAttribute()
{
    return $this->loggable->color;
}

所以我需要忽略这个调用的softdelete,但是我怎么能这样做呢? 文档仅显示一对多关系的情况。

另一种方法是编写自己的查询,但我想首先询问是否可以这样做。

1 个答案:

答案 0 :(得分:2)

您可以使用 withTrashed()

加载软删除的模型
public function getColorAttribute()
{
  return $this->loggable()->withTrashed()->first()->color;
}