2017 © Pedro PelĂĄez
 

library laravel-modelevents

Let a service provider handle your model events

image

shooka/laravel-modelevents

Let a service provider handle your model events

  • Wednesday, May 10, 2017
  • by shooka
  • Repository
  • 1 Watchers
  • 4 Stars
  • 5,064 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 9 Versions
  • 0 % Grown

The README.md

Laravel ModelEvents

Build Status Coverage Status Total Downloads Latest Stable Version Latest Unstable Version License, (*1)

Have you ever wondered where to put your eloquent model events? It is now easier than ever to apply listeners to your models., (*2)

Installation

Add this package to your Laravel project by running:, (*3)

composer require shooka/laravel-modelevents 0.3.*

To publish the necessary files, add the ServiceProvider to the array of providers in config/app.php:, (*4)

Shooka\ModelEvents\ServiceProvider::class,

Next, publish the files by running:, (*5)

php artisan vendor:publish --provider="Shooka\ModelEvents\ServiceProvider"

This publishes two files: * A ModelEvents/UserEvent.php file that contains a dummy class that shows what future ModelEvents are supposed to look like. * A Providers/ModelEventServiceProvider.php with an empty array of listeners that maps actual Eloquent model events to the ModelEvent classes., (*6)

As the new ModelEventServiceProvider has been published, you can add it to the array of providers:, (*7)

App\Providers\ModelEventServiceProvider::class,

Don't forget to remove the original one from the array:, (*8)

Shooka\ModelEvents\ServiceProvider::class,
  

Usage

This package is making use of some of the great features of Laravel which means that it is very easy to use in both new and existing Laravel projects., (*9)

The events that are supported out of the box are the standard Laravel model events: creating, created, updating, updated, saving, saved, deleting, deleted, restoring, and restored, (*10)

Custom events

If you want to define any custom events, they should be added to the $observables array:, (*11)

class Product extends Model
{
    protected $observables = [
        'sold',
        'shipped',
        'returned',
        ...
    ];
}

Those events are now observable in the ModelEvent:, (*12)

class ProductEvent extends ModelEvent
{
    public function returned($product) {
        // Increase stock count
    }
}

Activating a listener

To add a listener to an eloquent model, just map the model to a ModelEvent in the ModelEventServiceProvider:, (*13)

protected $listeners = [
    \App\Product::class => \App\ModelEvents\ProductEvent::class,
];

The ModelEvent could be placed anywhere, but is in this example put in the ModelEvents folder published by the command from the Installation chapter., (*14)

The Versions

10/05 2017

dev-laravel-5.4-support

dev-laravel-5.4-support https://github.com/shooka/laravel-modelevents

Let a service provider handle your model events

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel eloquent events model event listeners observe listen

22/09 2016

dev-master

9999999-dev https://github.com/shooka/laravel-modelevents

Let a service provider handle your model events

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel eloquent events model event listeners observe listen

22/09 2016

v0.3.0

0.3.0.0 https://github.com/shooka/laravel-modelevents

Let a service provider handle your model events

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel eloquent events model event listeners observe listen

21/09 2016

dev-release-0.3.0

dev-release-0.3.0 https://github.com/shooka/laravel-modelevents

Let a service provider handle your model events

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel eloquent events model event listeners observe listen

20/09 2016

dev-laravel-5.3-support

dev-laravel-5.3-support https://github.com/shooka/laravel-modelevents

Let a service provider handle your model event listeners

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel events models external listeners

20/09 2016

dev-file-publishing

dev-file-publishing https://github.com/shooka/laravel-modelevents

Let a service provider handle your model event listeners

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel events models external listeners

18/02 2016

v0.2.0

0.2.0.0 https://github.com/shooka/laravel-modelevents

Let a service provider handle your model event listeners

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel events models external listeners

18/02 2016

dev-develop

dev-develop https://github.com/shooka/laravel-modelevents

Let a service provider handle your model event listeners

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel events models external listeners

09/01 2016

v0.1.0

0.1.0.0 https://github.com/shooka/laravel-modelevents

Let a service provider handle your model event listeners

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolai Østby

laravel events models external listeners