Извлечение журнала активности для конкретного экземпляра модели (с использованием spatie / laravel-Activitylog)

я использую spatie / Laravel ActivityLog пакет.

код активности

 $user = Auth::user();
$inventory = Inventory::where('id','=','1')->first();
$properties = ['action' => 'view'];

activity()
->performedOn($inventory)
->causedBy($user)
->withProperties($properties)
->log('add inventory')
->subject('test subject');

Как настроить журнал активности для конкретного экземпляра модели?

ниже моя таблица

введите описание изображения здесь

1

Решение

Это работает нормально

1) Ответ

 $inventory = new Inventory();
Activity::where('subject_type',get_class($inventory))->get();

2) Ответ

 $inventory = new Inventory();
Activity::forSubject($inventory)->get();

Если вы попробуете второй ответ, то

Вы только что отредактировали функцию ниже в этом пути продавец / spatie / Laravel-activitylog / SRC / модели / Activity.php

public function scopeForSubject(Builder $query, Model $subject): Builder
{
return $query
->where('subject_type', $subject->getMorphClass())
->orWhere('subject_id', $subject->getKey());
}
1

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

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

По вопросам рекламы [email protected]