All Projects → orisintel → laravel-process-stamps

orisintel / laravel-process-stamps

Licence: MIT license
Logs which process created or modified a record

Programming Languages

PHP
23972 projects - #3 most used programming language
Dockerfile
14818 projects

Laravel Process Stamps

Latest Version on Packagist Build Status Total Downloads

It is sometimes very useful to know which process created or modified a particular record in your database. This package provides a trait to add to your Laravel models which automatically logs that for you.

Installation

You can install the package via composer:

composer require orisintel/laravel-process-stamps

Configuration

php artisan vendor:publish --provider="\OrisIntel\ProcessStamps\ProcessStampsServiceProvider"

Running the above command will publish both the migration and the config file.

Usage

After adding the proper fields to your table, add the trait to your model.

// User model
class User extends Model
{
    use ProcessStampable;

Next, create a migration for your table and include the following:

$table->processIds();

To specify your own foreign key or index names, include the following options:

$table->processIds([
    'created_index_name' => 'custom_created_index_name',
    'updated_index_name' => 'custom_updated_index_name',
    'created_foreign_key_name' => 'custom_created_foreign_key_name',
    'updated_foreign_key_name' => 'custom_updated_foreign_key_name',
    ]);

That will generate the nessesary field names to track processes.

Testing

composer test

Using Docker

All assets are set up under the docker-compose.yml file. The first time you run the docker image you must build it with the following command:

docker-compose build

Then you can bring it up in the background using:

docker-compose up -d

And the image is aliased so you can access its command line via:

docker exec -it processes-stamp-app /bin/bash

From there you can run the tests within an isolated environment

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].