La presentación de fecha y hora actual en CakePHP
-
26-09-2019 - |
Pregunta
¿Cuál es el método para presentar una marca de tiempo actual directamente en una INSERT
o un UPDATE
? Si yo estuviera a cargo SQL normal, me gustaría utilizar la función NOW()
para el campo SQL específica sobre la presentación. ¿Cómo iba a hacer eso con CakePHP?
$this->Model->save($this->data)
Solución
En CakePHP, que puede incluir la función sin escapar NOW()
utilizando DboSource::expression
$this->data['SomeModel']['your_datetime_field'] = DboSource::expression('NOW()');
$this->Model->save($this->data);
Esta es la mejor forma de incluir funciones de MySQL en tu dispositivo.
http://api.cakephp.org/2.3/class-DboSource. html # _expression
Otros consejos
si se agrega las columnas creadas y modificadas en su mesa que se rellena automáticamente con indicación de la hora actual. Si el caso es diferente. - es decir, desea rellenar un campo que más adelante desea modificar, utilizando probablemente la solución del edorian es el mejor
Se puede configurar campo de marca de tiempo para inicializar automático y actualización automática
timestampfield TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP