Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django模板赢得';t显示列表_Django_Python 3.x_Django Templates - Fatal编程技术网

Django模板赢得';t显示列表

Django模板赢得';t显示列表,django,python-3.x,django-templates,Django,Python 3.x,Django Templates,我已经看了前面的问题,但找不到问题的答案。 我试图显示一个2D列表,我在前面的HTML中使用了不同的列表。 我对另一个列表使用了类似的方法,但它不会显示,我只是获取标题。 HTML: <table class="listtable" > <thead> <tr> <th>No</th> <th>Account No</th> <th&g

我已经看了前面的问题,但找不到问题的答案。
我试图显示一个2D列表,我在前面的HTML中使用了不同的列表。 我对另一个列表使用了类似的方法,但它不会显示,我只是获取标题。
HTML:

    <table class="listtable" >
    <thead>
    <tr>
        <th>No</th>
        <th>Account No</th>
        <th>Time</th>
        <th>Message</th>
    </tr>
    </thead>
    {% for person in user %}
    <tr>
        {% for message in person %}
        <td>{% autoescape off %}{{ message }}{% endautoescape %}</td>
        {% endfor %}
    </tr>
    {% endfor %}
</table>
打印内容将准确显示它应该显示的内容。
清单大致如下:

[4, '<account number>', '<time>', 'somestring']
[3, '<account number>', '<time>', 'somestring']
[4','','',somestring']
[3,,'','',somestring']
该网页的消息来源说:

<table class="listtable" >
    <thead>
    <tr>
        <th>No</th>
        <th>Account No</th>
        <th>Time</th>
        <th>Messages</th>
    </tr>
    </thead>

</table>

不
帐号
时间
信息
编辑:版主视图代码

@login_required(login_url='/login')
def page_control(request):
    acc_no = request.session['acc_no']

    user = setup_page_control (acc_no)
    for item in user:
        print(item)
    return render_to_response("<htmlfile>.html",
                              locals(),
                              context_instance=RequestContext(request))



def setup_user_control(acc_no):
    messages = <outside magic>
    user = reversed(messages)
    return user
@login\u必需(login\u url='/login')
def页面_控制(请求):
acc_no=请求.会话['acc_no']
用户=设置页面控制(附件号)
对于用户中的项目:
打印(项目)
返回render_to_响应(“.html”,
本地人(),
上下文\实例=请求上下文(请求))
def设置用户控制(附件号):
消息=
用户=已反转(消息)
返回用户
我已经删除了很多代码,并更改了变量名等。。
我只删除了我100%确定没有问题的内容

我相信你的回答应该是这样的:

 return render_to_response("<htmlfile>.html",
                          {'user':user},
                          context_instance=RequestContext(request))
返回render\u to\u响应(“.html”,
{'user':user},
上下文\实例=请求上下文(请求))

我发现了我的问题,但我不确定为什么会发生。 当我离开时:

user = reversed(messages)

模板愿意再次输出列表。非常奇怪。如果有人知道原因,最好给出解释:)

对您发现的问题进行解释:

返回一个反向。这是而不是您期望的反向列表:

>>> a = [1,2,3,4,5]
>>> print reversed(a)
<listreverseiterator object at 0x...>

(来源:)

使用不同的上下文变量名称。将
user
更改为
user\u list
或其他内容。如果可以,请粘贴整个视图代码。我已更改了变量名,“user”是其他内容,我必须更改内容以确保安全性我想补充一点,我没有为此使用内置数据库:)这不是我的问题,我已经添加了我的答案“调试消息输出”是什么?没有错误,它甚至打印正确,只是无法输出到模板啊,非常感谢您为我清理它:)
>>> a = [1,2,3,4,5]
>>> print reversed(a)
<listreverseiterator object at 0x...>
user = list(reversed(messages))
# or
user = messages[::-1]