什么是直接在INSERTUPDATE提交当前时间戳的方法?如果我是运行普通的SQL,我会使用功能NOW()上提交具体的SQL领域。我会怎么做,与CakePHP的?

$this->Model->save($this->data)
有帮助吗?

解决方案

在CakePHP中,可以通过使用NOW()包括DboSource::expression功能未转义

$this->data['SomeModel']['your_datetime_field'] = DboSource::expression('NOW()');
$this->Model->save($this->data);

这是包括在您的保存MySQL函数的首选方式。

http://api.cakephp.org/2.3/class-DboSource。 HTML#_expression

其他提示

如果在你表中添加的创建和修改的列它们将自动与当前时间戳填充。如果情况是不同的 - 即要填充它以后要修改字段,可能使用edorian的解决方案是最好的。

可以时间戳字段设置为自动初始化和自动更新

timestampfield TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

http://dev.mysql.com/doc/refman/ 5.0 / EN / timestamp.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top