如何在Django模型中修复“ Django_Jalali” utcoffset(dt)?

时间:2019-04-16 17:03:38

标签: django django-models

我在我的Django项目中使用django_jalali作为波斯日历,并且我想为保留时间的created_at和Updated_at变量添加auto_now_add和auto_add。 当我从Django管理员添加帖子时,它将毫无问题地正确应用,但是当我想要更新帖子时,它将因utcoffset(dt) argument must be a datetime instance or None, not datetime错误而崩溃

我试图删除所有内容并在django_jalali的jmodels中使用默认参数,但是它将像上面一样崩溃

这是我的帖子模型:

from django_jalali.db import models as jmodels

created_at = jmodels.jDateTimeField(auto_now_add=True)
updated_at = jmodels.jDateTimeField(auto_now=True)

我应该再说一次,它可以很好地工作并正确保存日期,但是当我再次保存帖子时,它将由于以下错误而崩溃

Request Method: GET
Request URL:    http://127.0.0.1/admin/post/post/6/change/
Django Version: 2.2
Exception Type: TypeError
Exception Value: utcoffset(dt) argument must be a datetime instance or None, not datetime
Exception Location: \env\lib\site-packages\jdatetime\__init__.py in utcoffset, line 1220

2 个答案:

答案 0 :(得分:0)

通过在变量中添加一个额外的参数进行修复,如下所示:

created_at = models.DateTimeField(auto_now_add=True, auto_now=False)
updated_at = models.DateTimeField(auto_now_add=False, auto_now=True)

答案 1 :(得分:0)

这是Jdatetime库中的一个问题,django-jalali将其用作依赖项。 升级Jdatetime软件包将解决此问题。