phpvms/app/Models/Setting.php

62 lines
1.2 KiB
PHP
Raw Normal View History

<?php
namespace App\Models;
class Setting extends BaseModel
{
public $table = 'settings';
public $incrementing = false;
public $fillable = [
'name',
'key',
'value',
'group',
'type',
'options',
'description',
];
public static $rules = [
'name' => 'required',
'key' => 'required',
'group' => 'required',
];
/**
* @param $key
* @return mixed
*/
2018-01-01 01:19:18 +08:00
public static function formatKey($key)
{
return str_replace('.', '_', strtolower($key));
}
/**
* Callbacks
*/
protected static function boot()
{
parent::boot();
static::creating(function (Setting $model) {
if (!empty($model->id)) {
2018-01-01 01:19:18 +08:00
$model->id = Setting::formatKey($model->id);
}
});
}
/**
* Override the casting mechanism
* @param string $key
* @return mixed|string
*/
/*protected function getCastType($key)
{
if ($key === 'value' && !empty($this->type)) {
return $this->type;
} else {
return parent::getCastType($key);
}
}*/
}