Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
Самопроизвольное изменение типа данных при записи в Users (( http://forum.kohanaframework.su/viewtopic.php?f=33&t=340 |
Страница 2 из 2 |
Автор: | bsv [ 06 сен 2012, 17:34 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Неужели нет ГУРУ, кто знает в чем трабла??? |
Автор: | Sergey [ 07 сен 2012, 05:38 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
bsv писал(а): Такая проблема: в модели Users создал дополнительное поле: Код:
Не в модели, а в схеме таблицы. В модели у вас может быть быть записано так: Код:
Это раз. Во вторых, в таблице тогда пишите так: Код:
Далее.. Цитата: Если данных по `birthDate` нет, то хочу записать 'NULL'... Если данных по `birthDate` нет, то писать ничего не надо! Цитата: В модели сохраняю данные: Код:
Тут например в БД пишется $birth_date, которая в вашем случае могла быть такой — 1340892242: Код:
Показать в удобоваримом виде такую дату можно так: Код:
Под $format можно завести в конфиге строку, типа такой: "j, n, Y" и читать это оттуда: Код:
Где site — имя вашего файла с конфигами, dateformat — формат даты, о котором вы прочтёте тут: http://www.php.net/manual/ru/function.date.php, ну а $timestamp в этом примере, это то самое пресловутое 1340892242, которое мы сохранили в таблицу. По моему всё элементарно, ватсон В общем я всё усложнил специально, чтоб показать вам, насколько многогранно может быть решение. Я вообще не вижу никакой сложности у вас. В чём проблема то? Или забыли, что NULL это тоже значение, которое всегда будет isset? |
Автор: | bsv [ 07 сен 2012, 13:10 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Sergey писал(а): <...> В чём проблема то? <...> Проблема в том, что в другой модели, где в таблице создано абсолютно такое же поле, как и в User, NULL пишется без проблем… Что касается Sergey писал(а): Если данных по `birthDate` нет, то писать ничего не надо! так если данные меняются (например, удаляется неверное значение), делается пустым (незаполненным), то надо заменить старое значение на NULL. А вместо NULL "самопроизвольно"(?) передается строка с пустым значением, тогда как я принудительно присваиваю переменной значение NULL (если нет данных). |
Автор: | Sergey [ 07 сен 2012, 14:35 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
bsv писал(а): Sergey писал(а): <...> В чём проблема то? <...> Проблема в том, что в другой модели, где в таблице создано абсолютно такое же поле, как и в User, NULL пишется без проблем… Что касается Sergey писал(а): Если данных по `birthDate` нет, то писать ничего не надо! так если данные меняются (например, удаляется неверное значение), делается пустым (незаполненным), то надо заменить старое значение на NULL. А вместо NULL "самопроизвольно"(?) передается строка с пустым значением, тогда как я принудительно присваиваю переменной значение NULL (если нет данных). Не морочьте голову ни себе ни людям. То, что я написал — работает. Читайте внимательнее |
Автор: | bsv [ 07 сен 2012, 15:28 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Sergey писал(а): Не морочьте голову ни себе ни людям. То, что я написал — работает. Читайте внимательнее Голову никто никому не морочит! Я просил помощи в разрешении вопроса, а не дать рабочий пример. В очередной раз повторю, что в ДРУГОЙ (не User) модели ВСЕ РАБОТАЕТ... а в User - нет. Разница в моделях только та что User наследуется от Auth_User, а другая модель - от ORM. В этом и есть непонятка: ПОЧЕМУ при записи (или присваивании значения) переменной в User меняется тип??? |
Автор: | bsv [ 07 сен 2012, 16:46 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Код:
Делая такой "контрольный" вывод, вижу следующее: Код:
т.е. значение в $data NULL, а в $user УЖЕ пустая строка (((( |
Автор: | AmberLEX [ 08 сен 2012, 10:55 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Цитата: так если данные меняются (например, удаляется неверное значение), делается пустым (незаполненным), то надо заменить старое значение на NULL. А так? Код:
Или как-то так Код:
Да вы бы скинули минимальный код вашего рабочего примера в архиве. А то вы там мудрите, а воспроизводить у себя времени нет. Так бы развернул быстро пример и посмотрел в чем засада. |
Страница 2 из 2 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |