Как я могу добавить current_timestamp или сейчас для даты поля в схеме базы данных drupal.
'created' => array(
'description' => t('Timestamp when the fee schedule was added.'),
'type' => 'int',
'not null' => TRUE,
'unsigned' => TRUE,
),
Ответы:
Вы можете указать специфичный для драйвера тип столбца для MySQL, используя
mysql_type
атрибут:Затем, включив модуль, вы можете просто изменить столбец, добавив поведение по умолчанию / при обновлении:
Я только что проверил это на Drupal 7, и это работает удовольствие.
ПРИМЕЧАНИЕ. Если вы не хотите, чтобы отметка времени обновлялась при каждом обновлении записи, просто удалите
ON UPDATE CURRENT_TIMESTAMP
часть запроса.источник
Я предполагаю, что вы имеете в виду MySQL, функция, которую вы хотите изучить прямо из документов - это отметки времени .
Это, вероятно, обновит таблицу БД, созданную схемой, до типа поля, который вы ищете:
Просто наткнулся на это сообщение о том, что поддержка метки времени должна быть в Drupal 8, поэтому я предполагаю (и я могу ошибаться), что она, вероятно, не поддерживается из коробки для D7. Просто измените тип на TIMESTAMP в вашем массиве и посмотрите, что дает, но я бы не стал ставить на это работу через API схемы D7.
ОБНОВИТЬ:
Собственно, посмотрите в посте. Патч добавит поддержку метки времени в D7. Большое спасибо друпалшреку за то, что он поделился этим с нами.
Схема базы данных после исправления будет выглядеть следующим образом:
Посмотрите пост выше для патча, я не буду репостировать его материал здесь, не уверен, что это будет правильно.
Надеюсь, это поможет, счастливое кодирование.
источник
Вот решение для Drupal 8.6.x просто, если кто-то смотрит, как я был :)
это эквивалентно ...
источник