python-3.x - Python3 和 Django2 中的日期时间对象不一致
问题描述
Python 3,Django 2
我试图让一个函数始终如一地返回一个日期时间对象。
以下是它起作用和不起作用的条件。
我有一个函数可以生成一个带有如下偏移量的日期时间对象:
from django.conf import settings
from datetime import datetime
def off_time():
date = datetime.now()
offset = settings.TIME_OFFSET
offtime = date + offset
return offtime
TIME_OFFSET 在设置中生成,因此:
from datetime import timedelta
TIME_OFFSET = timedelta(days=370000)
如果我保存到这样的模型对象:
from django.db import models
import stellar.physics_tools
class Test(models.Model):
cdate = models.DateTimeField(default=stellar.physics_tools.off_time, help_text='When Generated')
然后在 cdate 上工作,我可以这样做:
cdate = test.cdate
creation_date = cdate.strftime("%d-%m-%Y %H:%M:%S")
它工作正常。
但如果我试试这个:
newtime = stellar.physics_tools.off_time
return newtime.strftime("%d-%m-%Y %H:%M:%S")
我得到:'function'对象没有属性'strftime'
我需要这个函数来返回一个我可以使用 .strftime 的对象,至少。
任何帮助表示赞赏。谢谢。
解决方案
为此,我需要使用 () 调用函数,如下所示:
newtime = stellar.physics_tools.off_time()
我没有这样做,因为如果我在 Django 模型构造中这样做,它会返回定义类时创建的值,这不是我想要的。
简而言之,我仍然需要在 Django 模型中使用 stellar.physics_tools.off_time,但是当在此之外调用函数时,我需要使用 stellar.physics_tools.off_time()。
推荐阅读
- python - 太空入侵者:加载图像
- node.js - 在没有 AuthGuard 的路由上获取 nestjs 中的当前用户
- android - ImageAnalysis.Analyzer CameraX 帧速率下降转换为位图
- javascript - 如何创建带有删除按钮的复选框
- python - Python(初学者),我不明白这两者之间的区别
- haskell - 理解haskell中的类型级函数
- python - Discord.py user.block/user.send_friend_request:错误 403/Forbidden 如何授予机器人发送好友请求和阻止用户的权限?
- c# - 在OpenGL中查找旋转矩阵
- java - Spring Sleuth - JMS ErrorHandler 上的跟踪中断
- c++ - 为什么用户无法提供他们的输入