Html 动态更新Flask中的嵌套树+;金甲2号
我是web应用程序开发的绝对初学者。为了给我的Python应用程序添加一个web界面,我选择了Flask。在阅读了一些手册/教程之后,我明确表示,我不能没有一些CSS/HTML和Jinja模板,我也开始学习这些模板 现在,我需要构建一个嵌套项树,可以像这样折叠/展开:Html 动态更新Flask中的嵌套树+;金甲2号,html,css,flask,treeview,jinja2,Html,Css,Flask,Treeview,Jinja2,我是web应用程序开发的绝对初学者。为了给我的Python应用程序添加一个web界面,我选择了Flask。在阅读了一些手册/教程之后,我明确表示,我不能没有一些CSS/HTML和Jinja模板,我也开始学习这些模板 现在,我需要构建一个嵌套项树,可以像这样折叠/展开: 文件夹 嵌套文件夹 项目1 项目2 该树是从以下格式的词典列表中生成的: [ {'name': 'text...', 'level': 0|1|2..., 'id': DB id, 'count': number
- 文件夹
- 嵌套文件夹
- 项目1
- 项目2
- 嵌套文件夹
[ {'name': 'text...', 'level': 0|1|2..., 'id': DB id, 'count': number of children}, ... ]
该列表在Flask后端从PostgreSQL数据库中检索
现在,我当前的方法是将列表按原样传递给前端,使用Jinja继承的模板对其进行解析,如下所示:
{%extends'generic.html%}
{%block content%}
分级机
{#树视图的新CSS类}
{#当前嵌套级别}
{%set l=0%}
{#在传递的变量(LIST)上迭代#}
{分类器%中的项的%1}
{#增加等级(嵌套)}
{%if item['level']>l%}
{%n在范围内(项['level']-l)%}{%endfor%}
{#降低级别(非最高级)}
{%elif项['level']{%endfor%}
{%endif%}
{#将项作为复选框或标签输出#}
{%if项['id']==-1%}
- {{item['name']}}[{{{item['count']}]
{%else%}
{%endif%}
{%set l=项['level']%}
{%endfor%}
Датасеты
{%endblock%}