django中DateTime属性创建时间去掉毫秒的方法

这个方法特别简单且方便

import datetime
# 时间基类
class BaseModel(models.Model):
    create_time = models.DateTimeField(auto_now_add=datetime.datetime.now().replace(microsecond=0), verbose_name='创建时间')
    update_time = models.DateTimeField(auto_now=datetime.datetime.now().replace(microsecond=0), verbose_name='更新时间')
    class Meta:
        db_table = 'basemodel'
        abstract = True
        verbose_name = '时间基类'

其实就是用到replace,给微秒定义为0,再重新生成迁移文件,执行迁移命令就OK啦
在这里插入图片描述
数据库中就是这样的格式了
还有一个问题就是数据在前端显示的时候,年月日和时分秒中间有个T没有去掉,有没有大佬指点一下
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 可以使用 datetime的 strftime 函数来格式化时间,去除毫秒。具体代码如下: ```python from datetime import datetime now = datetime.now() formatted_time = now.strftime("%Y-%m-%d %H:%M:%S") print(formatted_time) ``` 输出结果为:2022-01-01 12:34:56,毫秒已经被去除了。 ### 回答2: 在 Django ,我们可以使用 `datetime` 模块来操作时间,并将其转换为 Django 的 `DateTimeField` 类型。如果想要去除时间毫秒部分,可以使用以下方法: 首先,需要导入 `datetime` 模块: ```python from datetime import datetime ``` 然后,创建一个 `datetime` 对象,将其转换为字符串,并取出日期和时间部分: ```python now = datetime.now() # 获取当前时间 formatted_time = now.strftime("%Y-%m-%d %H:%M:%S") # 将时间转换为字符串格式 ``` 接下来,可以使用 `split()` 方法将日期和时间部分分开,并且只保留时分部分: ```python time_parts = formatted_time.split() # 将日期和时间部分分开 time = time_parts[1] # 只保留时间部分 ``` 最后,我们可以得到去除毫秒时间部分: ```python time_without_ms = time.split(".")[0] # 去除毫秒部分 ``` 至此,我们得到了去除毫秒时间部分 `time_without_ms`。 ### 回答3: 在Django,要去除日期时间毫秒部分,可以使用datetime模块提供的strftime()方法来格式化日期时间字符串。具体步骤如下: 1. 首先,在你的Django视图或模型,导入datetime模块:`from datetime import datetime` 2. 然后,获取要处理的日期时间对象,例如,如果你有一个DatetimeField字段叫做datetime_field,你可以通过`obj.datetime_field`的方式获取它的值。 3. 接下来,使用strftime()方法将日期时间对象格式化为你想要的字符串格式。常见的日期时间格式化指令包括年(%Y)、月(%m)、日(%d)、时(%H)、分(%M)和(%S)等。例如,如果你只需要年月日时分的字符串,你可以使用`obj.datetime_field.strftime("%Y-%m-%d %H:%M")`的方式将日期时间对象格式化为字符串。 4. 在结果字符串的末尾加上适当的分隔符,然后添加它们以删除毫秒部分。例如,你可以使用字符串的`split()`方法,按照"."分隔字符串,并只获取第一个元素来实现这一点。具体代码为`obj.datetime_field.strftime("%Y-%m-%d %H:%M").split('.')[0]`。 5. 最后,你将得到一个不带毫秒的日期时间字符串,可以将它用于你的应用程序的相应操作。 总之,要在Django去除日期时间毫秒部分,你可以通过使用datetime模块的strftime()方法来格式化日期时间对象,然后使用字符串处理方法删除毫秒部分。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值