我是Django的一个完整的菜鸟,已经谷歌搜索了一段时间,但我无法弄清楚这个模板的一部分是做什么的。
https://github.com/oppian/oppian/blob/master/oppianproj/templates/about.html
{% load set_vars_from_json %}
{% set_vars_from_json_block %}
{ "menu":
[{"name":"About", "url":"{% url about %}"},
{"name":"People", "url":"{% url people %}"},
{"name":"Labs", "url":"{% url labs %}"},
{"name":"Blog", "url":"{% url blog %}"},
{"name":"Contact", "url":"{% url contact %}"}
]}
{% end_set_vars_from_json_block %}
为什么开发人员,从json_block加载和设置变量?这提供了什么优势?我的猜测是菜单网址会动态更改?
简单的问题: 对于网站内容,例如
中的信息<p>....</p>
,这是属于模板还是我应该使用模块将其作为静态数据处理?
编辑:或者对于附带问题,如果我打算存储大段静态数据,我是否只为每个页面创建一个模型?
答案 0 :(得分:1)
请参阅以下URL
set_vars_from_json_block
是模板标记
{ "menu":
[{"name":"About", "url":"{% url about %}"},
{"name":"People", "url":"{% url people %}"},
{"name":"Labs", "url":"{% url labs %}"},
{"name":"Blog", "url":"{% url blog %}"},
{"name":"Contact", "url":"{% url contact %}"}
]}
这会加载json片段,并在templatetag中解析end_set_vars_from_json_block
以使其成为基于块的实现。
您可以通过指定“type”来保存所有模型。查看Django Picklefield