ValidationError: ["'\n- 9 июля 2022\n' значение имеет неправильный формат даты. Оно должно быть в формате YYYY-MM-DD. Есть ли способ изменить формат даты?
Я просматриваю веб-сайт в поисках данных для включения в мой проект, и при получении даты она приходит в формате мм-дд-гггг, например "9 июля 2022 г.". Есть ли способ обойти это и избежать ошибки?
for test_job in final_jobs:
newjob = Jobs.objects.create(
title = test_job['title'],
location = test_job['location'],
date_posted = test_job['date_posted'],
closing_date = test_job['closing_date'],
)
ошибка:
ValidationError: ["'\n- 9 июля 2022\n' значение имеет неверный формат даты. Оно должно быть в формате YYYY-MM-DD.
". Вы можете использовать функцию strptime
для преобразования даты в объект даты, который Django с радостью примет
Для получения дополнительной информации смотрите эти 2 раздела документации по Python:
https://docs.python.org/3/library/datetime.html#datetime.datetime.strptime
https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
В данном случае кажется, что можно просто сделать
date_posted = datetime.strptime(test_job['date_posted'], "\n- %B %d, %Y\n")
closing_date = datetime.strptime(test_job['closing_date'], "\n- %B %d, %Y\n")
однако может потребоваться дополнительная обработка строк, если формат каждый раз незначительно отклоняется
вы можете изменить настройки в настройках смотрите здесь https://docs.djangoproject.com/fr/4.0/ref/settings/#date-format