Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY [RSS Feed]

#1 Фев. 26, 2016 20:38:41

Elaphe
Зарегистрирован: 2015-02-04
Сообщения: 125
Репутация: +  5  -
Профиль   Отправить e-mail  

Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY

Посоветуйте, пожалуйста, как можно (и можно ли) сделать ввод и сохранение даты таким образом:

1) если известна точная дата события - то в формате DD/MM/YYYY (тут все понятно)
2) если известен только месяц и год - то в формате ММ/YYYY
3) если известен только год - в формате YYYY

Заранее спасибо.

Офлайн

#2 Фев. 27, 2016 07:18:28

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY

нужно кастомизировать проверку формы поля. Почитать об этом можно в документации, тут на русском.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Фев. 27, 2016 10:01:24

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY

Elaphe
Данные обычно бессмысленны, если не сохраняются в БД. Хранить три разных вида даты в трёх столбцах - это какой-то чересчур костыльный костыль, скорее всего дату вы будете сохранять в полном виде не зависимо от того, какую её часть ввел пользователь, заполняя недостающие части дефолтными значениями.
Таким образом самый простой вариант, который мне видится: готовить дату в полном виде на клиенте. У вас так или иначе для ввода даты используется сторонний JS, какой-нибудь  datepicker, который вы приделываете к инпуту и каким-то образом вставляете значение из этого компонента в форму. Вот на этом этапе и разруливайте все преобразования введеной даты.



Офлайн

#4 Фев. 27, 2016 15:04:43

Elaphe
Зарегистрирован: 2015-02-04
Сообщения: 125
Репутация: +  5  -
Профиль   Отправить e-mail  

Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY

Спасибо за ответы.
Думала - может, есть что-то готовое на этот случай.
Видимо, да, на проверке поля формы буду подставлять дефолтные значения.

Отредактировано Elaphe (Фев. 27, 2016 15:56:38)

Офлайн

  • Начало
  • » Django
  • » Ввод даты: как сделать, чтобы было возможно DD/MM/YYYY, MM/YYYY или YYYY[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version