🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
数据自动完成指在不需要手动赋值的情况下对字段的值进行处理后写入数据库。 系统支持`auto`、`insert`和`update`三个属性,可以分别在写入、新增和更新的时候进行字段的自动完成机制,auto属性自动完成包含新增和更新操作,例如我们定义`User`模型类如下: ~~~ namespace app\index\model; use think\Model; class User extends Model { protected $auto = []; protected $insert = ['ip','status' => 1]; protected $update = ['login_ip']; protected function setIpAttr() { return request()->ip(); } } ~~~ 在新增数据的时候,会对`ip`和`status`字段自动完成或者处理。 ~~~ $user = new User; $user->name = 'ThinkPHP'; $user->save(); echo $user->name; // thinkphp echo $user->status; // 1 ~~~ 在保存操作的时候,会自动完成`ip`字段的赋值。 ~~~ $user = User::find(1); $user->name = 'THINKPHP'; $user->save(); echo $user->name; // thinkphp echo $user->ip; // 127.0.0.1 ~~~