【问题标题】:How to set empty date field to a default date如何将空日期字段设置为默认日期
【发布时间】:2019-08-19 10:40:32
【问题描述】:

如何为空日期字段设置默认值。这是我尝试过的,但它似乎不起作用。

request.GET.get('received_date', '1/1/2000')

【问题讨论】:

  • 您应该详细说明您的问题以及您的代码有什么问题。代码很简单,如果 received_date 的值是 None 这是正确的行为,它将替换 1/1/2000

标签: django django-models django-views django-orm


【解决方案1】:

如果您将其转换为日期时间对象,然后将其传递给您的模型,这将起作用。

date = request.GET.get('received_date', '1/1/2000')

date_obj = datetime.datetime.strptime(date, "%m/%d/%Y")

【讨论】:

    【解决方案2】:

    可能是这样的:

    如果您想在视图中定义默认日期:

    received_date = request.GET.get('received_date')
    if not received_date or received_date == None:
        received_date = '1/1/2000'
    

    如果你想在模型中定义你的默认日期:

    received_date = models.DateField(default='01/01/2000', blank=True)
    

    【讨论】:

    • 太棒了。谢谢。我有它适合的模型。视图需要它
    【解决方案3】:

    您可以在模型定义中进行设置,如下所示

    date = models.DateTimeField(default=None, blank=True)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-13
      相关资源
      最近更新 更多