【问题标题】:I get an error when setting a Django date field设置 Django 日期字段时出现错误
【发布时间】:2020-09-03 10:53:18
【问题描述】:

我正在尝试将日期字段设置为固定日期。我的带有日期字段的“models.py”:

class Foo(models.Model):
    bar = models.DateField()

在我看来:

import datetime
from app.models import Foo

foo = Foo(bar=datetime.date('1/1/2021'))

错误:

Exception Type: TypeError
Exception Value: an integer is required (got type str)

【问题讨论】:

    标签: python python-3.x django django-models


    【解决方案1】:

    您正在将一个字符串传递给date() 方法。你应该像这样在里面传递整数:

    foo = Foo(bar=datetime.date(2020, 1, 1))
    

    Read more here

    【讨论】:

      【解决方案2】:

      你可以试试datetime的strptime函数:

      import datetime
      from app.models import Foo
      
      foo = Foo(bar=datetime.datetime.strptime('1/1/2021',"%d/%m/%Y").date())
      

      【讨论】:

        【解决方案3】:

        试试下面的代码:

        import datetime
        
        date_object = datetime.date.fromisoformat('2021-01-01')
        
        foo = Foo(bar=date_object)
        

        请看这里Documentation

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-09-17
          • 2015-12-26
          • 2014-10-02
          相关资源
          最近更新 更多