Вызов неопределенного метода stdClass :: getModified ()

Laravel v5.7.24
Laravel Auditing v8.0.4
PHP версия 7.3.1

У меня есть конкретная проблема, связанная с пакетом Laravel Auditing. Хотя я установил модель и все, как в документации, шаблон лезвия показывает мне ошибку 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');
}
}

Лезвие зрения:

<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>

0

Решение

Учитывая, что сообщение об ошибке (Call to undefined method stdClass::getModified()) относится к stdClass и не AuditЯ сделаю безумное предположение и предположу, что вы делаете что-то вроде DB::table('audits')->where('auditable_type', Post::class)->get() получить ревизии, которые возвращают результаты как POPO, не Audit экземпляров.

Попробуйте это вместо этого: Audit::where('auditable_type', Post::class)->get()

0

Другие решения

Других решений пока нет …