Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
Самопроизвольное изменение типа данных при записи в Users (( http://forum.kohanaframework.su/viewtopic.php?f=33&t=340 |
Страница 1 из 2 |
Автор: | bsv [ 24 авг 2012, 18:17 ] |
Заголовок сообщения: | Самопроизвольное изменение типа данных при записи в Users (( |
Доброго времени суток всем... Такая проблема: в модели Users создал дополнительное поле: Код:
Если данных по `birthDate` нет, то хочу записать 'NULL'... В модели сохраняю данные: Код:
При проверке, что записано в переменные, вижу что в $data['birthDate'] записано Null (присваиваю в контроллере), а в $user->birthDate записана пустая строка, т.е. тип переменной строка, а значение <''>... Код:
Делая такой "контрольный" вывод(echo Debug...), вижу следующее: Код:
т.е. значение в $data NULL, а в $user УЖЕ пустая строка (((( Подскажите почему??? полазил по моделям Users и ORM так и не нашел, где происходит изменение типа... |
Автор: | Rush64 [ 24 авг 2012, 18:29 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
хм. возможно в бд нужно поставить для поля атрибут NULL ? и вообще в случае нулевого значения ОРМка может присваивать '', правда не уверен |
Автор: | bsv [ 24 авг 2012, 19:18 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Rush64 писал(а): хм. возможно в бд нужно поставить для поля атрибут NULL ? и вообще в случае нулевого значения ОРМка может присваивать '', правда не уверен Мона пример, как поставить атрибут NULL в БД ??? ОРМка в другой модели, созданной мной, в подобное поле другой таблицы в таком же случае пишет NULL без проблем!!! Вот мне и не понятно, в чем разница... Где собака порылась... |
Автор: | Rush64 [ 25 авг 2012, 16:20 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
зайди в pma, нажми редактировать поле и поставь галочку null |
Автор: | Sergey [ 26 авг 2012, 02:49 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
учите mysql |
Автор: | bsv [ 28 авг 2012, 11:24 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Sergey писал(а): учите mysql читайте полностью ветку, прежде чем УЧИТЬ !!! В первом посте есть определение как задано поле... (спасибо за совет!) |
Автор: | bsv [ 28 авг 2012, 11:25 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Rush64 писал(а): зайди в pma, нажми редактировать поле и поставь галочку null пользуюсь HeidiSQL, но проверил в pma - "галочка" стоит... ![]() |
Автор: | Sergey [ 28 авг 2012, 11:43 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
bsv писал(а): Sergey писал(а): учите mysql читайте полностью ветку, прежде чем УЧИТЬ !!! В первом посте есть определение как задано поле... (спасибо за совет!) Это ваше? Цитата: Мона пример, как поставить атрибут NULL в БД ??? О чём может быть речь после таких вопросов? |
Автор: | Rush64 [ 28 авг 2012, 14:12 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
ладно еще вариант $user->birthDate = ($data['birthDate']) ? $data['birthDate'] : NULL; возможно $data['birthDate'] == '', просто пустое и записывается в базу пустая строка может так прокатит $user->birthDate = ($data['birthDate'] && $data['birthDate'] != '') ? $data['birthDate'] : NULL; |
Автор: | bsv [ 30 авг 2012, 17:37 ] |
Заголовок сообщения: | Re: Самопроизвольное изменение типа данных при записи в User |
Rush64 писал(а): ... может так прокатит $user->birthDate = ($data['birthDate'] && $data['birthDate'] != '') ? $data['birthDate'] : NULL;... в принципе при пустой строке условие проверки <($data['birthDate']) ?...> выдаст все равно ЛОЖЬ ... проверил и предложенный вариант... все тоже самое как и было. в модель все равно идет строковое именно пустое значение, которое потом (по типу data) пишется в базу как '0000-00-00'... ![]() |
Страница 1 из 2 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |