2017 © Pedro Peláez
 

library laravel-model-stash

Easily maintain a "forever" cache of your models.

image

cklmercer/laravel-model-stash

Easily maintain a "forever" cache of your models.

  • Saturday, March 4, 2017
  • by cklmercer
  • Repository
  • 0 Watchers
  • 3 Stars
  • 14 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

laravel-model-stash

Easily maintain a "forever" cache of your models., (*1)

Disclaimer: This trait is best used on models which you rarely create, update or delete., (*2)

Installation

1.) Install via composer
composer require cklmercer/laravel-model-stash

Usage

1.) Use the trait Cklmercer\ModelStash\CacheForever within your model.
// Role.php

use Cklmercer\ModelStash\CacheForever;
use Illuminate\Database\Eloquent\Model;

class Role extends Models 
{
    use CacheForever;

    // truncated for brevity..
}

Now, whenever you create/update/delete/restore an instance of your model your cache will automatically be updated., (*3)

2.) Get an index of your cached models.

Note: The default cache name will be the plural form of your model's class name., (*4)

$roles = \Cache::get('roles')

You can change your model's cache name by defining a $cacheName property on your model., (*5)

// Role.php

use Cklmercer\ModelStash\CacheForever;
use Illuminate\Database\Eloquent\Model;

class Role extends Model
{
    use CacheForever;

    /**
     * The model's cache name.
     *
     * @var string
     */
    protected $cacheName = 'cachedRoles';

    // truncated for brevity..
}
$roles = \Cache::get('cachedRoles');



##### 3.) Get a specific instance of a cached model. *Note: The convention used to get a specific instance is "cache-name:cache-key", with cache-key defaulting to your model's route key.* ```php $role = \Cache::get('roles:1')
You can change your model's cache key by defining a `$cacheKey` property on your model.
// Role.php

use Cklmercer\LaravelModelStash\CacheForever;
use Illuminate\Database\Eloquent\Model;

class Role extends Model
{
    use CacheForever;

    /**
     * The model's cache key.
     *
     * @var string
     */
     protected $cacheKey = 'slug';

     // truncated for brevity..
}
```php $role = \Cache::get('roles:admin')

License

MIT, (*6)

The Versions

04/03 2017

dev-master

9999999-dev

Easily maintain a "forever" cache of your models.

  Sources   Download

MIT

The Requires

 

by Cody Mercer

25/07 2016

v0.2.1

0.2.1.0

Easily maintain a "forever" cache of your models.

  Sources   Download

MIT

The Requires

 

by Cody Mercer

25/07 2016

v0.2.2

0.2.2.0

Easily maintain a "forever" cache of your models.

  Sources   Download

MIT

The Requires

 

by Cody Mercer

25/07 2016

v0.2.0

0.2.0.0

Easily maintain a "forever" cache of your models.

  Sources   Download

MIT

The Requires

 

by Cody Mercer

21/07 2016

v0.1.0

0.1.0.0

Easily maintain a "forever" cache of your models.

  Sources   Download

MIT

The Requires

 

by Cody Mercer