¿Cómo puedo agregar current_timestamp o ahora para date feild en el esquema de la base de datos drupal.
'created' => array(
'description' => t('Timestamp when the fee schedule was added.'),
'type' => 'int',
'not null' => TRUE,
'unsigned' => TRUE,
),
Respuestas:
Puede especificar un tipo de columna específica del controlador para MySQL usando el
mysql_type
atributo:Luego, al habilitar su módulo, simplemente puede modificar la columna para agregar el comportamiento predeterminado / al actualizar:
Acabo de probar eso en Drupal 7 y funciona de maravilla.
NOTA: Si no desea que la marca de tiempo se actualice cada vez que se actualiza el registro, simplemente elimine la
ON UPDATE CURRENT_TIMESTAMP
parte de la consulta.fuente
Supongo que se está refiriendo a MySQL, la característica que desea examinar directamente desde los documentos es la marca de tiempo .
Esto probablemente actualizaría la tabla db creada por el esquema al tipo de campo que está buscando:
Acabo de tropezar con esta publicación que indica que el soporte de marca de tiempo debería estar disponible para Drupal 8, por lo que supongo (y podría estar equivocado) probablemente no sea compatible de fábrica para D7. Simplemente cambie el tipo a TIMESTAMP en su matriz y vea lo que da, pero no apostaría a que esto funcione a través de la API de esquema D7.
ACTUALIZAR:
En realidad, mira en la publicación. El parche agregará soporte a la marca de tiempo en D7. Felicitaciones a drupalshrek por compartir esto con nosotros.
El esquema de la base de datos, una vez parcheado, sería el siguiente:
Ve a ver la publicación anterior para el parche, no volveré a publicar sus cosas aquí, no estoy seguro de si hacerlo sería correcto.
Espero que esto ayude, feliz codificación.
fuente
Aquí está la solución para Drupal 8.6.x por si alguien está mirando como yo :)
esto es equivalente a ...
fuente