首页 / 知识
关于python:如何使用Django模板渲染树结构(递归)?
2023-04-13 11:29:00

How can I render a tree structure (recursive) using a django template?我的内存中有一个树结构,我想使用Django模板以HTML呈现。
将有一些对象 我已经找到了关于如何实现这一目标的讨论,但是张贴者认为这在生产环境中可能不是很好。 有人知道更好的方法吗?
使用 样例代码: 主模板:假设" all_root_elems"是树的一个或多个根的列表
tree_view_template.html渲染嵌套的
我认为规范的答案是:"不要"。
相反,您可能应该做的是在视图代码中分解内容,因此只需遍历模板中的(in | de)凹痕即可。我想我可以通过在循环遍历树时将缩进和缩进附加到列表中,然后将该"旅行"列表发送到模板来做到这一点。 (然后模板将从该列表中插入 ,并通过"理解"创建递归结构。) 我也很确定递归地包含模板文件确实是一种错误的方式...
我来不及了 在"主要"模板中:
然后在
这可能比您需要的更多,但是有一个名为" mptt"的django模块-该模块将分层树结构存储在sql数据库中,并包括用于在视图代码中显示的模板。您也许可以在那里找到有用的东西。 这是链接:django-mptt
是的,您可以做到。这是一个小把戏
Django在此确切场景中具有内置的模板帮助器: https://docs.djangoproject.com/zh-CN/dev/ref/templates/builtins/#unordered-list 我遇到了同样的问题,我写了一个模板标签。我知道那里还有其他这样的标签,但是无论如何我都需要学习制作自定义标签:)我认为效果很好。 阅读文档字符串以获取用法说明。 github.com/skid/django-recurse 更正此: root_comment.html
tree_comment.html
例如-型号:
没有人喜欢字典吗?我可能在这里错过了一些东西,但这似乎是设置菜单的最自然的方法。使用键作为条目和值作为链接将其弹出到DIV / NAV中,然后就走了! 从你的基地
叫这个
它没有尝试过默认值或有序命令,也许您已经尝试过? 我遇到了类似的问题,但是我首先使用JavaScript实现了该解决方案,然后才考虑如何在Django模板中完成相同的工作。 我使用序列化程序实用程序将模型列表转换为json,并将json数据用作层次结构的基础。 |
最新内容
相关内容
优化 Python 程序的内存占用
优化 Python 程序的内存占用,代码,数据,情况,培训,对象,字典,内存,垃圾,程序,机制,Python的垃圾回收机制通过引用计数来决定一个对象要不要被Python 递归函数
Python 递归函数,第一,第三,培训,个人,人大,函数,程序,条件,以此类推,例题,递归:函数调用自己本身递归的核心:1)递归推导式2)递归终止条件不过python之如何使用初始化种子和迭代
python之如何使用初始化种子和迭代函数生成列表,数据,标准,位置,工具,培训,代码,函数,列表,初始化,种子,本篇阅读的代码实现使用一个初始化种python如何控制内存
python如何控制内存,名称,情况,系统,定期,管理,数字,数据,培训,对象,内存,python控制内存的方法:一、对象的引用计数机制二、垃圾回收机制三、python中什么叫递归函数?
python中什么叫递归函数?,规模,培训,函数,嵌套,内部,不是,实例,特性,层次,效率,1、什么叫递归函数?在函数内部,可以调用其他函数。如果一个函python中如何使用pil
python中如何使用pil,培训,示例,人数,以上,功能,方法,更多,官方,内容,PIL(PythonImageLibrary)是python的第三方图像处理库,但是由于其强大的Python脚本如何使用
Python脚本如何使用,培训,脚本,文件,文件名称,路径,命令,下面,窗口,以上,更多,python脚本的使用方法如下:1、首先编写脚本文件,命名成一个.py文Python如何使用https请求
Python如何使用https请求,代码,包装,培训,模块,底层,定义,以上,协议,操作,功能,python使用https请求代码如下:importurllibimporthttplibheadepython如何清理内存
python如何清理内存,培训,策略,情况,对象,垃圾,变量,内存,结束,赋值,局部,引用计数,这是Python的垃圾回收策略。补充一下。解释器(也就是你说pythonclass如何使用
pythonclass如何使用,数据,培训,设计,类型,下标,成员,函数,使用方便,功能强大,组成部分,python中所有的数据都是对象,它提供了许多高级的内建python递归怎么写
python递归怎么写,规模,培训,有限,资料,百度,策略,大地,代码,函数,小朋友,python递归:1、递归的百度百科定义程序调用自身的编程技巧称为递归(python如何使用round函数
python如何使用round函数,培训,函数,小数点,小数位,整数,位数,左侧,语法,以上,参数,在python3中,round(1.0/2.0)得到的是1,而在python2中,round(