如摘要所述,使用thinkphp5进行数据库操作, 配置模型时开启了Auto时间戳的功能。Create方法创建数据时,Create_time和Update_time同时插入相同数据。但是在编辑修改时,用update方法更新数据后,数据更新成功,但是update_time时间戳没有更新
入坑时源代码如下图所示:

解决方法:需要用模型的操作方法,更新数据库
ShopList::update([
‘id’ => $id,//默认更新id等于$id的数据
‘status’ => ‘-1’
]);
可以测试,通过dump打印更新的结果,是一个模型对象。也可以使用:
ShopList::update([
‘status’ => ‘-1’
],[ ‘id’ => $id]);
以上方法,重复刷新执行,结果都是一样。但实际上数据仅进行了1次更新,因此这个方面不好确认是否更新成功。
可以使用SAVE这个方法
$model = new ShopList;
$model->save([ ‘status’ => ‘-1’
],[ ‘id’ => $id])
以上,就是小编遇到时间戳不更新原因和处理方法

发表评论 取消回复