我的内存中有一个树结构,我想使用Django模板以HTML呈现。
class Node():
name = "node name"
children = []
将有一些对象root
是Node
,并且children
是的列表Node
。root
将在模板的内容中传递。
我发现这个的如何可能实现一个讨论,但海报表明,这在生产环境中可能不是很好。
有人知道更好的方法吗?
使用with模板标记,我可以做树/递归列表。
样例代码:
主模板:假设“ all_root_elems”
是树的一个或多个根的列表
<ul>
{%for node in all_root_elems %}
{%include "tree_view_template.html" %}
{%endfor%}
</ul>
tree_view_template.html呈现nested ul,li并使用node模板变量,如下所示:
<li> {{node.name}}
{%if node.has_childs %}
<ul>
{%for ch in node.all_childs %}
{%with node=ch template_name="tree_view_template.html" %}
{%include template_name%}
{%endwith%}
{%endfor%}
</ul>
{%endif%}
</li>
我有Django 1.10版本的这个模型 在这个ORM查询之后 我能够得到系数并展示他们的游戏。现在在模板中显示重复的“游戏代码”。我发现很难显示游戏及其系数。
6.1 渲染模板 一旦你拥有一个模版文件,你可以通过给一个map来给它传递数据。 map是一个变量及赋予的值的集合,模板使用它来得到变量的值,或者对于块标签求值。 它的渲染函数有一个可选的变量键值对map 通过 ctx.Render() 方法来渲染模板,例如: func (r *Render) Serve(ctx *faygo.Context) error { return ctx.Ren
Tango默认核心不包含模板渲染功能,在官方中间件中包含两个渲染引擎中间件,一个是 Go标准模板引擎, 另一个是 Pongo2模板引擎
在控制器里模板渲染最常用的方法是display,在CMF中支持如下的模板渲染方式: //不带任何参数 $this->display(); 此种方式系统会自动判断模板路径,并渲染出模板内容,此种方式模板路径是:主题名/应用名/控制器名/操作名+模板文件后缀名; $this->display('edit'); 此种方式表示调用此控制器下的edit操作的模板; $this->display(':in
Tpongo2 中间件是 pongo2.v3 模板引擎的 Tango 支持。 安装 go get github.com/tango-contrib/tpongo2 示例 package main import ( "github.com/lunny/tango" "gopkg.in/flosch/pongo2.v3" "github.com/tango-contrib/tp
说明 调用方法: $.f2e.util.render(temp,data,fn,helper); 函数说明: 调用template渲染模板,依赖于artTemplate库 参数说明: 参数名 类型 说明 备注 temp string html字符串 无 data object 参数名 无 fn function 回调函数 无 helper function artTemplate自定义方法 无