add:新增隐藏字段功能

This commit is contained in:
JaguarJack 2020-12-27 12:33:30 +08:00
parent 901c7f6cd7
commit b44c8838c4
2 changed files with 59 additions and 2 deletions

View File

@ -5,6 +5,7 @@ namespace catcher\base;
use catcher\CatchQuery;
use catcher\traits\db\BaseOptionsTrait;
use catcher\traits\db\RewriteTrait;
use catcher\traits\db\TransTrait;
use think\model\concern\SoftDelete;
use catcher\traits\db\ScopeTrait;
@ -17,7 +18,7 @@ use catcher\traits\db\ScopeTrait;
*/
abstract class CatchModel extends \think\Model
{
use SoftDelete, TransTrait, BaseOptionsTrait, ScopeTrait;
use SoftDelete, TransTrait, BaseOptionsTrait, ScopeTrait, RewriteTrait;
protected $createTime = 'created_at';
@ -29,8 +30,8 @@ abstract class CatchModel extends \think\Model
protected $autoWriteTimestamp = true;
// 分页 Limit
public const LIMIT = 10;
// 开启
public const ENABLE = 1;
// 禁用

View File

@ -0,0 +1,56 @@
<?php
namespace catcher\traits\db;
/**
* 重写 think\Model 的方法
*
* Trait RewriteTrait
* @package catcher\traits\db
*/
trait RewriteTrait
{
/**
* 初始化
*
* CatchModel constructor.
* @param array $data
*/
public function __construct(array $data = [])
{
parent::__construct($data);
$this->hidden = array_merge($this->hidden, $this->defaultHiddenFields());
}
/**
* hidden model fields
*
* @return array
*/
protected function defaultHiddenFields(): array
{
return [$this->deleteTime];
}
/**
* 重写 hidden 方法,支持合并 hidden 属性
*
* @param array $hidden
* @return $this
*/
public function hidden(array $hidden = [])
{
/**
* 合并属性
*/
if (!count($this->hidden)) {
$this->hidden = array_merge($this->hidden, $hidden);
return $this;
}
$this->hidden = $hidden;
return $this;
}
}