代码之家  ›  专栏  ›  技术社区  ›  LuFFy Тип Странный

python:如何从django时间戳中移除微秒?

  •  0
  • LuFFy Тип Странный  · 技术社区  · 6 年前

    在PostgreSQL数据库中 timestamp 数据类型列的值为:

    2018-06-08 12:35:09
    

    但是,当使用django检索数据时,数据返回为(datetime是组合微秒):

    "2018-06-08T12:35:09.225"
    

    如何将此DateTime对象转换为django格式的“dd-mm-yyyy hh:mm:ss”格式?

    注释 -我在用Cookiecutter

    我用于从模型检索数据的代码 Bid 如下所示( views.py ):

    request_data = json.loads(request.body)
    bidId = request_data['id']
    bidData = Bid.objects.get(bid_id=bidId)
    data = serializers.serialize('json', [bidData, ])
    serialized = json.loads(data)
    bid_obj = json.loads(serialized[0]['fields']['bid_obj'])
    serialized[0]['fields']['bid_obj'] = bid_obj
    outputArray = {
        "bid": serialized[0]['fields']
    }
    return JsonResponse(outputArray, safe=False)
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   cezar Dennis Kioko    6 年前

    正如你所发现的, datetime 检索到的对象包含微秒。如果不想显示微秒或 小精灵 对象,可以使用方法 strftime 并传递所需的格式。

    在您的情况下,所需的格式是 DD-MM-YYYY时:分:秒 . 您可以使用以下代码片段在python中获取该格式:

    dt.strftime('%d-%m-%Y %H:%M:%S')
    

    假设变量 dt 是一个 日期时间 对象。

    在官方 documentation 您可以查看可以传递给哪些其他选项 斯特夫时间 .