Skip to content

ngockush/laravel-caching-model

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

laravel-caching-model

  • Simple package for caching laravel eloquent model
  • Support retrieve model stored in cache store by id (or other primary key)

Usage

  1. Implement Cacheable interface then use HasCache trait:
use Hacoidev\CachingModel\Contracts\Cacheable;
use Hacoidev\CachingModel\HasCache;

class Setting extends Model implements Cacheable
{
    use HasCache;

    ...
}
  1. use fromCache() static method to retrieve model data from cache storage
$cachedInstance = Setting::fromCache()->find($key);

Available methods:

  1. public static function primaryCacheKey(): string;
  • Return primary key for creating cache key
  • Default: id
  1. public static function getCacheKey($id): string;
  • Return cache key for specific instance with primary key is $id
  1. public static function cacheTimeout(): int;
  • Return cache timeout
  1. public function scopeCacheWithRelation($query);
  • Specific relationship will cache together model
public function scopeCacheWithRelation($query)
{
    return $query->with('relationship:id);
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%