【问题标题】:CSV to Django models Date format in Django ModelsCSV 到 Django 模型 Django 模型中的日期格式
【发布时间】:2017-08-18 06:46:21
【问题描述】:

在我的models.py中

from_date = models.DateField(auto_now=False,auto_now_add=False)
to_date = models.DateField(auto_now=False,auto_now_add=False)

我的 csv 有

在我的views.py中,我从csv插入数据

   reader = csv.DictReader(csvf)
       for row in reader:
           Csv.objects.create(from_date=row['from'],to_date=row['to'])

Django 给我一个错误,“日期应该是它必须是 YYYY-MM-DD 格式。” 有没有什么方法可以直接改变 django 模型中的日期格式而不需要 Django 模型表单?

【问题讨论】:

    标签: python django csv django-models


    【解决方案1】:

    错误信息很清楚,你应该把eg:01/05/17改为2017-05-01

    def format_date(date):
        date  = date.split('/')[0]
        month = date.split('/')[1]
        year  = date.split('/')[2]
        return '20%s-%s-%s' % (year, month, date) # eg: '2017-05-01'
    
    reader = csv.DictReader(csvf)
    for row in reader:
        _from = format_date(row['from'])
        _to = format_date(row['to'])
        Csv.objects.create(from_date=_from, to_date=_to)
    

    【讨论】:

      猜你喜欢
      • 2013-12-12
      • 2014-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-11
      • 2017-06-02
      • 1970-01-01
      • 2011-06-26
      相关资源
      最近更新 更多