即使USE_TZ=True,SQLite后端也不支持时区感知时间

tkclm6bt  于 2022-11-15  发布在  SQLite
关注(0)|答案(1)|浏览(278)

我现在正在开发一个小的Django项目,需要使用感知的DateTime.Time对象。
当用户注册时,他必须填写时间输入。然后,该数据被转换为我的views.py文件中的一个感知时间对象,如下所示:

...
if form.cleaned_data['reviews_time']:
    form.cleaned_data['reviews_time'] = form.cleaned_data['reviews_time'].replace(tzinfo=get_current_timezone())
else:
    form.cleaned_data['reviews_time'] = time(hour=0,minute=0,tzinfo=get_current_timezone())

*save the created user account*
...

问题是,当我提交表单时,我收到以下错误:SQLite backend does not support timezone-aware times.,即使我启用了USE_TZ。
我想知道为什么会发生这个错误,以及如何修复它。如果有人能帮助我,我将非常感激(并随时要求额外的代码/解释)

qf9go6mv

qf9go6mv1#

在我自己的例子中,USE_TZ被设置为FALSE。将其更改为USE_TZ=True后,一切正常。

相关问题