线程结束后 Django DateTimeField 值丢失

Django DateTimeField value lost after thread ends

下面是我的模型:

class MyModel(models.Model):
    created = models.DateTimeField(auto_now_add=True)
    modified = models.DateTimeField(auto_now=True)

在创建 MyModel 的请求中,我登录并看到 createdmodified正在获取默认值、当前日期和时间。

此外,从 SQL shell,我看到 table 中保存了 MySQL 的相同值。

然而,当我读取从新请求创建的对象时,模型的所有其他字段都保持不变,但 createdmodified return 空值。

这不会发生在开发环境中。我正在使用 Google App Engine 和 Google Cloud SQL 第二代产品。

我从另一个 question 找到了解决方案。

@jturmel 对问题的回答是这个问题的解决方案。

综上所述,自MySQL 5.6.4 以来,DATETIME 类型存在向后不兼容的升级。您需要 MySQLdb 版本 1.2.5 才能使用新的 DATETIME。