我正在使用Google App Engine和Django模板.
我有一个要显示对象的表,如下所示:

Object Result:
    Items = [item1,item2]
    Users = [{name='username',item1=3,item2=4},..]

Django模板是:

<table>
<tr align="center">
    <th>user</th>
    {% for item in result.items %}
        <th>{{item}}</th>
    {% endfor %}
</tr>

{% for user in result.users %}
    <tr align="center"> 
        <td>{{user.name}}</td>
        {% for item in result.items %}
            <td>{{ user.item }}</td>
        {% endfor %}
    </tr>
{% endfor %}
</table>

现在Django documention表示,当它在变量中看到.
它try 了几种方法来获取数据,其中之一是字典查找,这正是我想要的,但似乎没有实现……

推荐答案

我找到了一个"更好"/"更好"的解决方案来获取内部变量 这不是最好的办法,但很管用.

您可以在Django中安装一个自定义过滤,它将获取您的字典的密钥作为参数

要使其在Google app-engine中工作,您需要在主目录中添加一个文件, 我给我的django_hack.py打了电话,里面有一小段代码

from google.appengine.ext import webapp

register = webapp.template.create_template_register()

def hash(h,key):
    if key in h:
        return h[key]
    else:
        return None

register.filter(hash)

现在我们有了这个文件,我们需要做的就是告诉应用引擎使用它...

webapp.template.register_template_library('django_hack')

并在模板视图中添加此模板,而不是通常的代码

{{ user|hash:item }}

而且它应该完美地工作=)

Django相关问答推荐

模仿没有像预期的那样工作(Django)

在不指定查找的情况下调用 prefetch_lated() 有用吗?

错误404除主要应用程序外,HTML页面无法渲染的其他应用程序

根据当前对象中的多对多字段过滤对象

int_list_validator在 Django 表单中不起作用

如何在 Django 模板视图中显示我的数据?

使用django提交后如何保留html表单数据?

使用 Django 和 South 重命名应用程序

Django:在模板中显示当前语言环境

在 Scrapy 中访问 django 模型

验证 Django 模型对象的正确方法?

Django中的左外反向select_related?

在 Django CharFields 中自动截断 max_length 字段

relation "django_site" does not exist

通过 django shell 保存图像/文件

Django中视图的多个decorator :执行顺序

超过 1 个外键

Django 什么是反向关系?

django 我们可以在预取相关模型上 Select 一个字段吗?

Django 模型(1054,Unknown column in 'field list')