我能够成功记录对课程的更改,并返回已更改的内容(不包括多对多内容)。但是,我无法使用内置的新transitionTo()方法恢复任何更改。
我在所有类上都收到以下错误:
Expected Auditable type App\XYZ, got XYZ instead
我将所有可变形类(我用于跟踪审核的所有类)都正确地附加在AppServiceProvider中的morphmap中,如下所示:
\Illuminate\Database\Eloquent\Relations\Relation::morphMap([
'Employee' => \App\Employee::class,
];
所有类都适用于所有其他Laravel morphTo方法。
可审计代码看起来像是在Auditable类的第467行中绊倒错误:
if (!$this instanceof $audit->auditable_type) {}
它似乎没有在地图上查找任何变形类。或者,我当然可能完全错过了一些东西!
有关如何使用审核方法使其工作的任何帮助 - 是否有人使用标准变形类? (它当然会通过循环旧字段并保存对象来手动恢复类。)
使用Laravel 5.5和Laravel-Auditing的最新版本(5.0)。
答案 0 :(得分:0)
向开发者发送了一条说明 - 这实际上是一个错误。需要供应商代码才能包含morphMapped对象。
位于Laravel Auditing的开发人员在一小时内回复,并在几小时后进行了修复。我可以确认这现在正如预期的那样运作。出色的支持。