<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Setting extends Model {
protected $fillable = ['key', 'value', 'group'];
public static function get(string $key, $default = null) {
return cache()->remember("setting_{$key}", 3600, function () use ($key, $default) {
return static::where('key', $key)->value('value') ?? $default;
});
}
public static function set(string $key, $value): void {
static::updateOrCreate(['key' => $key], ['value' => $value]);
cache()->forget("setting_{$key}");
}
}