把从数据库读出的日期由datetime对象转换为字符串显示到前端
之前学习flask+vue时实现了一个数据列表功能,列表中展示了数据的创建时间
传送门:
flask+vue:创建一个数据列表并实现简单的查询功能(一)
flask+vue:创建一个数据列表并实现简单的查询功能(二)
flask+vue:创建一个数据列表并实现简单的查询功能(三)
【创建时间】这个字段在数据库中存为了datetime对象,通过python读取出来时,并不是字符串格式,不能直接显示到前端
所以需要额外处理下这个字段,把datetime类型转为string类型
第一种方式:在sql查询语句把datetime对象转换为字符串格式
select type_name, value, date_format(create_time, '%Y-%m-%d') from data_list
在sql语句中使用 date_format 将 create_time 字段转换为字符串格式,这里可以根据需要转换为"年-月-日"等格式。
第二种方式:在python中把datetime对象转换为字符串格式
先从数据库中读出数据,然后在python中使用 strftime 方法转换为字符串
from utils.connect_db import MysqlConnect db = MysqlConnect() sql = "select type_name, value, create_time from data_list LIMIT 0, 5" data = db.select_all(sql) db.close() # print(data) new_data = [list(item) for item in list(data)] print(new_data) def list_obj(array): obj = {"date": array[2].strftime("%Y-%m-%d %H:%M:%S"), "type": array[0], "value": array[1]} return obj m = map(list_obj, new_data) print(list(m))