【问题标题】:Django DateTimeField editing in admin site管理站点中的 Django DateTimeField 编辑
【发布时间】:2016-09-18 09:41:17
【问题描述】:

我在这样的模型中有一个 DateTimeField:

pickupTime = models.DateTimeField(default=datetime.now)

我可以在管理站点中创建模型条目,但是当我单击编辑它时,我收到错误:

'datetime.time' object has no attribute 'date'

我错过了什么?

【问题讨论】:

  • 你能发布错误的完整堆栈跟踪吗?

标签: python django postgresql django-models django-admin


【解决方案1】:

我将变量名称从“pickupTime”更改为另一个名称“日期”,然后在迁移后我可以在管理站点中编辑模型。我猜pickupTime 列有一些旧数据或阻止它显示在管理站点中的东西

【讨论】:

    【解决方案2】:
        from django.utils import timezone
        .
        .
        .
        pickupTime = models.DateTimeField(default=timezone.now())
    

    python datetime 和 django timezone 模块之间总是存在一些差异。尝试使用 Django 一个

    【讨论】:

    • no no no,永远不要使用这样的代码,默认值将被评估一次 - 在第一个模块导入期间,而不是在每个模型实例化期间;为了安全起见,最好使用 auto_now_add=True
    猜你喜欢
    • 2012-09-11
    • 2011-04-24
    • 2013-10-16
    • 2018-10-02
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 2011-09-23
    相关资源
    最近更新 更多