созданная измененная функция (по умолчанию) не работает в версии Cakephp 1.2 - PullRequest
1 голос
/ 04 января 2012

Я создал приложение, и во всех таблицах базы данных были «созданы, изменены» поля, которые автоматически заполнялись функциональностью Cakephp по умолчанию.И я поставил тип поля

created datetime NULL,
modified datetime NULL,

как.Но это не работает.Данные, где показано 0000-00-00 00:00:00 Формат.

Версия CakePHP - 1.2, поэтому я поставил опцию datetime NULL, также я удалил временные файлы кэша в Model.правильный формат даты и времени для этих 2 полей.

Если есть какие-либо проблемы с версией XAMPP (я использую последнюю версию XAMPP, 1.7.7 PHP: 5.3.8 & mysql v 5.5.16)

Я надеюсь, что все идентифицирует мою проблему.Пожалуйста, помогите мне с правильным решением.

Ответы [ 2 ]

4 голосов
/ 03 июля 2012

У меня была похожая проблема, но в CakePHP 2.1.3 с созданными и измененными столбцами, вставляющими связку нулей вместо текущей даты / времени.

Моя проблема заключалась в существующем кеше соответствующей модели.Мне пришлось удалить существующий кеш модели, чтобы этот автоматический механизм datetime работал.Кеш находится в: app / tmp / cache / models /.

Я думаю, у меня была эта проблема, во-первых, потому что я изменил структуру таблицы после ее первоначального создания, добавив созданное поле.

После однократного удаления кэша модели все работало нормально.

2 голосов
/ 04 января 2012

Не понятно из вашего поста; но вам нужно установить значение по умолчанию, равное null, а также установить в поле значение null (меня всегда смущало):

ALTER TABLE `your_table` CHANGE `created` `created` DATETIME NULL DEFAULT NULL

и

ALTER TABLE `your_table` CHANGE `modified` `modified` DATETIME NULL DEFAULT NULL

Затем попробуйте очистить файлы кэша и добавить новую запись.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...