在使用eloquent时,通过官方文档看到可以自定义插入字段和更新字段名,附链接https://laravel-china.org/doc...
接下来先给出数据表的设计:CREATE TABLE `plans`( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `title` varchar(100) NOT NULL, `content` mediumtext, `status` tinyint(1) NOT NULL DEFAULT 0, `create_time` TIMESTAMP, `update_time` TIMESTAMP,
PRIMARY KEY(id),
FOREIGN KEY(user_id) REFERENCES users(id)
)ENGINE=INNODB;
因为我使用的是mysql5.6版本,所以支持设置两个timestamp类型,但是这样设置后,创建时两个时间相同我理解,但是在我更新数据后,两个字段还是相同的更新后的时间,我特别不能理解,然后我试了一段时间,弃用了这种方式,于是我使用了原生语句,在更新时,同时更新update_time为当前时间,但是发现create_time同样也是进行了更新,还是两个时间段能相同,我想问在不改变数据表字段类型的前提下有没有好的方法,因为我做的小项目都快完了,才发现这个问题,想找到一个好的解决办法
|