Поле даты сохранения в виде дд / мм / гггг рельсы - PullRequest
0 голосов
/ 29 января 2019

У нас есть date_of_birth поле типа date в нашей User модели.

Когда я пытаюсь сохранить мой объект User.

u = User.last
u.date_of_birth = "31-03-1987"
u.save

результаты:

u.date_of_birth
=> Tue, 31 Mar 1987

но если я заменю - на /

u.date_of_birth = "31/03/1987"
u.save

результаты:

u.date_of_birth
=> nil

Вопрос

Это поведение по умолчанию?

Или я что-то упустил?

1 Ответ

0 голосов
/ 30 января 2019

Будет установлено, очевидно, ноль, потому что date_of_birth не содержит действительный формат.

Стандартный формат БД для даты и времени: YYYY-MM-DD HH:MM:SS

Используя postgres db для версии с более высокими рельсами, т.е. Rails 3+, вы не можете получить такую ​​проблему,

>   u.created_at = '03/04/2017'
# => "03/04/2017" 
> u.created_at 
# => Mon, 03 Apr 2017 00:00:00 IST +05:30

существует в более старой версии ruby.Я рекомендую либо обновляться, либо менять формат ввода строковой даты

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