0

我是 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>

,这属于模板还是应该使用模块将其作为静态数据处理?

编辑:或者对于附带问题,如果我打算存储大量静态数据,我是否只是为每个页面创建一个模型?

4

1 回答 1

1

参考以下网址

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 片段,并在模板标签中解析end_set_vars_from_json_block它以使其成为基于块的实现。

通过指定“类型”,您可以只保存一个模型。查看Django Picklefield

于 2012-12-21T22:54:25.187 回答