我的csv中的日期格式为mm/dd/yyyy
我编辑过设置.py包括:
DATE_INPUT_FORMATS = [
'%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y']
# '2006-10-25', '10/25/2006', '10/25/06'
将csv行分配给db model时,我得到以下错误:
^{pr2}$这是我的代码:
import os
import sys
import csv
import django
from datetime import date as django_date
sys.path.append("/home/nerdbox2/django_/logbook/")
os.environ["DJANGO_SETTINGS_MODULE"] = "logbook.settings"
django.setup()
from flights.models import Flight
f = Flight()
reader = csv.reader(open('path to file'))
for row in reader: #reads row from csv
f.date = django_date(row[0])
f.aircraft = row[1]
f.save()
如果我做一些类似的事情:f.date = django_date(int(row[0]))
我得到:ValueError: invalid literal for int() with base 10: 'date'
我认为问题是,既然输入格式是yyyy/mm/dd
,'/'
字符不能变成int()
,但是如何将字符串变成Django将接受的日期对象呢?在
当您想要解析单个日期字符串时,它与django无关。您需要使用^{} 将日期时间字符串转换为日期时间对象:
在你的情况下,应该是:
^{pr2}$相关问题 更多 >
编程相关推荐