[TOC]
### 创建修改器类
~~~
namespace App\Model;
trait LinkModifier
{
// order_num 访问器
public function getOrderNumAttribute($value){
return "排序值:{$value}";
}
// order_num 修改器
public function setOrderNumAttribute($value){
$this->attributes['order_num'] = $value + 10;
}
}
~~~
### 模型中使用查询类
> /app/Model/User.php 中use trait
~~~
declare(strict_types=1);
namespace App\Model;
use Hyperf\DbConnection\Model\Model;
/**
* @property $id
* @property $name
* @property $gender
* @property $created_at
* @property $updated_at
*/
class User extends Model
{
// 使用查询类
use LinkQuery,LinkModifier;
/**
* The table associated with the model.
*
* @var string
*/
protected $table = 'user';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = ['id', 'name', 'gender', 'created_at', 'updated_at'];
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = ['id' => 'integer', 'gender' => 'integer'];
}
~~~
### Controller中使用测试
~~~
$obj = Link::query()->type('战略合作伙伴')->first();
$obj->order_num = 22;
var_dump($obj->save());
return $obj;
~~~