django - 如何将 timezone.today 作为默认值?
问题描述
我想将我的 DateField 的默认值设置为 UTC 时区的今天日期。
如果我放datetime.now(timezone.utc).date()
,它将是服务器重新启动时调用的固定值。
如果我放timezone.now
,它将返回 datetime 对象,而不是 day 对象。
如何获取 UTC 时区的今天日期?一个可调用的函数(最后没有括号)因为如果我放timezone.now().date
,它不会在服务器重新启动时被调用,而不是在每次创建/更新对象时调用?
解决方案
你似乎已经大部分解决了你自己的问题。简单地创建“一个可调用的函数”。
from datetime import datetime
def today_utc():
return datetime.utcnow().date()
class MyModel(models.Model):
my_field = models.DateField(default=today_utc)
推荐阅读
- angular - 如何在 Ionic 4 中更新离子搜索栏的高度?
- c# - 如何将唯一参数传递给 Inetlab 客户端,例如数据库 ID?
- java - 尝试绘制自定义视图如何检测单击了哪个切片
- c++ - 如何将 Caesar Cipher 的元素从字符串更改为字符串
- security - 什么是 iFrame 政策?
- c# - 如何在水晶报表Visual Studio中制作二维码
- html - 为什么网格包含溢出项目时会溢出父网格?
- python - 如果本地存储库中不存在文件夹,则克隆-Python flask
- ios - 我无法在模拟器上登录沙盒用户 - 不正确的通行证/用户
- java - 休眠cfg文件