Django- получение значения 'models.DateField(default=datetime.datetime.today)' в представлении
У меня эта модель:
models.py:
class myModel(models.Model):
a = models.ForeignKey(P,on_delete=models.CASCADE)
...
**date = models.DateField(default=datetime.datetime.today)**
В файле views.py я получаю данные поля "date":
views.py
from appX.models import myModel
from datetime import datetime
...
def my_items(request):
...
got_date = myModel.objects.get(id = 1).date
got_date_2 = datetime.strptime(got_date, "%YYYY-%MM-%d")
Но python выдает следующую ошибку:
time data '"2024-02-14"' does not match format '%YYYY-%MM-%d'
Какой "формат" я должен использовать? Спасибо.
-----update-------- в ответ на @John Gordon
Дата извлекается из базы данных, затем сохраняется в сессии, затем снова извлекается в виде "str" под названием "got_date"; таким образом, я хочу преобразовать ее в объект date - тот самый, который используется в поле даты в django - снова для передачи в другую таблицу базы данных с помощью "strptime".
Это будет работать не с форматированием даты, как это сделано в шаблонах Django (что было заимствовано из PHP), а как определено в модуле Python datetime
[python-doc], поэтому:
got_date_2 = datetime.strptime(got_date, '%Y-%m-%d')
В конце концов, я исправил ошибку, преобразовав "got_date" в "str" с помощью:
got_data = str(myModel.objects.get(id = 1).date)
got_date_2 = datetime.strptime(got_date, "%Y-%m-%d")**
После этого ошибка была устранена.
Спасибо, что указали и на ошибку в формате.