调用未定义的方法 stdClass::getModified()

Call to undefined method stdClass::getModified()

Laravel v5.7.24
Laravel 审计 v8.0.4
PHP 版本 7.3.1

我有一个与包 Laravel Auditing 有关的具体问题。虽然我设置了模型和文档中的所有内容,但 blade 模板向我显示错误 Call to undefined method stdClass::getModified()。非常感谢。

这是我的模型:

namespace App;

use Laravel\Scout\Searchable;
use Illuminate\Database\Eloquent\Model;
use OwenIt\Auditing\Contracts\Auditable;

class Post extends Model implements Auditable
{
    use Searchable, \OwenIt\Auditing\Auditable;

    protected $fillable = [...];
    protected $auditExclude = [...];

    public function user()
    {
        return $this->belongsTo('App\User');
    }
}

Blade 视图:

<ul>
     @forelse ($audits as $audit)
                <li>
                    @foreach ($audit->getModified() as $attribute => $modified)
                            <ul>
                                <li>@lang('article.'.$audit->event.'.modified.'.$attribute, $modified)</li>
                            </ul>
                    @endforeach
                </li>
            @empty
        <p>@lang('article.unavailable_audits')</p>
    @endforelse
</ul>

鉴于错误消息 (Call to undefined method stdClass::getModified()) 指的是 stdClass 而不是 Audit,我将大胆猜测并假设您正在做类似 [=13] 的事情=] 获取审计,returns 结果为 ,而不是 Audit 个实例。

试试这个:Audit::where('auditable_type', Post::class)->get()