gpt4 book ai didi

python - 将 python 对象呈现为 HTML - 简单类型但嵌套 - 在 django 中

转载 作者:太空宇宙 更新时间:2023-11-04 13:38:57 25 4
gpt4 key购买 nike

将 Python 对象转换为 HTML(表格或框架集)以在 django 中呈现

关于如何遍历任意 python 对象属性并呈现为 html 的任何建议?不需要调用任何方法。该对象将包含:Stringintegerdatetimelist 这些类型,以及其他类似的 python 对象(不同的类,但仍然是 Stringintegerdatetimelist..)。嵌套可以有 5-6 层深。

我想呈现为 html(类似于表格或框架集等),并在 html 中设置类/id 以供将来的 CSS 使用(在这个问题中没有必要深入研究 css)。这是一个简化的示例 Python 对象:

name    : Mr sandman
addr :
street 1: 123 main st
street 2: None
city : Los angeles
state : ca
zip : 90001

events :[
date_of_birth : datetime(2013, 01, 01) ,
date_of_grad : None
]
is_married : False
has_children : None
awards:[
(award:
name : bravery
date : datetime(2010,01,01)),
(award:
name : courage
date : None ),
]

或者,将类似的 json 呈现为 html 也会有所帮助。

最佳答案

最简单的方法是先将您的 Python 对象转换为 JSON。然后使用许多 json 到 html 转换器之一。前任: https://github.com/bloopletech/json2html/tree/master

演示 http://json.bloople.net/#_output

因为你的python对象包含datetime类型,所以需要先扩展json解码器。

import json
def extend_json(obj):
if isinstance(obj, date):
return str(obj)
elif isinstance(obj, datetime):
return obj.strftime("%Y-%m-%d %H:%M:%S")
elif isinstance(obj, Decimal):
return float(obj)

data = json.dumps(obj, indent=4, sort_keys=True, default=extend_json)

关于python - 将 python 对象呈现为 HTML - 简单类型但嵌套 - 在 django 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22827118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com