An audit trail package for Laravel Eloquent Model. It is able to store the changes made on a given model into an "audit trails" table, along with the attributes that have been changed.
namespace Acme\Models;
use Illuminate\Database\Eloquent\Model;
use Aedart\Audit\Traits\RecordsChanges;
class Category extends Model
{
use RecordsChanges;
}
Later in your application...
$category = Category::create( [ 'name' => 'My category' ]);
// Obtain the "changes" made (in this case a "create" event)
$changes = $category->recordedChanges()->first();
print_r($changes->toArray());
// Example output:
// [
// "id" => 1
// "user_id" => null
// "auditable_type" => "Acme\Models\Category"
// "auditable_id" => "24"
// "type" => "created"
// "message" => "Recording created event"
// "original_data" => null
// "changed_data" => [
// "name" => "My Category"
// "id" => 1
// ]
// "performed_at" => "2021-04-28T11:07:24.000000Z"
// "created_at" => "2021-04-28T11:07:24.000000Z"
// ]
Please read the official documentation for additional information.
The mono repository is located at github.com/aedart/athenaeum
This package follows Semantic Versioning 2.0.0
BSD-3-Clause, Read the LICENSE file included in this package