前言
CI4中,提供了**数据建模**的能力,其中一个妙处就是在使用使用 CodeIgniter 的模型新增或者插入数据时,可以自动写入时间字段和更新时间字段。
踩坑
一、数据无法插入
在**验证规则**中不要把createdField
和updatedField
的字段设为 required
,否则数据将无法插入。
二、数据插入后为0
如果MySQL这边,时间 **字段类型** 为 datetime
时,一定要加入$useTimestamps
protected $useTimestamps = true;
否则插入到数据库的数据为0,并非当前时间。
三、使用$useTimestamps
时注意
使用$useTimestamps
时,假如你的数据表没有插入时间字段(createdField
)或更新时间字段(updatedField
),请把他们写上,例如
protected $useTimestamps = true;
// 有插入时间字段,赋值为字段名称
protected $createdField = 'addTime';
// 没有更新时间字段,赋值为null(没有插入时间字段也同理)
protected $updatedField = null;
如果两个都无,就不用写这三行啦~
总结
使用 CodeIgniter 可以节省许多开发PHP的时间,开发后端API的效率也大大提高。不过数据建模这一块暂时没有中文文档,看懂数据建模就需要花费一点心思啦~
Have a good day!