<bdo id='tMFsE'></bdo><ul id='tMFsE'></ul>
<tfoot id='tMFsE'></tfoot>
  • <i id='tMFsE'><tr id='tMFsE'><dt id='tMFsE'><q id='tMFsE'><span id='tMFsE'><b id='tMFsE'><form id='tMFsE'><ins id='tMFsE'></ins><ul id='tMFsE'></ul><sub id='tMFsE'></sub></form><legend id='tMFsE'></legend><bdo id='tMFsE'><pre id='tMFsE'><center id='tMFsE'></center></pre></bdo></b><th id='tMFsE'></th></span></q></dt></tr></i><div id='tMFsE'><tfoot id='tMFsE'></tfoot><dl id='tMFsE'><fieldset id='tMFsE'></fieldset></dl></div>
    1. <small id='tMFsE'></small><noframes id='tMFsE'>

      <legend id='tMFsE'><style id='tMFsE'><dir id='tMFsE'><q id='tMFsE'></q></dir></style></legend>

        在JJAA2中呈现词典

        时间:2024-08-21

        <small id='TBRyU'></small><noframes id='TBRyU'>

        <legend id='TBRyU'><style id='TBRyU'><dir id='TBRyU'><q id='TBRyU'></q></dir></style></legend><tfoot id='TBRyU'></tfoot>

            • <bdo id='TBRyU'></bdo><ul id='TBRyU'></ul>
              <i id='TBRyU'><tr id='TBRyU'><dt id='TBRyU'><q id='TBRyU'><span id='TBRyU'><b id='TBRyU'><form id='TBRyU'><ins id='TBRyU'></ins><ul id='TBRyU'></ul><sub id='TBRyU'></sub></form><legend id='TBRyU'></legend><bdo id='TBRyU'><pre id='TBRyU'><center id='TBRyU'></center></pre></bdo></b><th id='TBRyU'></th></span></q></dt></tr></i><div id='TBRyU'><tfoot id='TBRyU'></tfoot><dl id='TBRyU'><fieldset id='TBRyU'></fieldset></dl></div>
                    <tbody id='TBRyU'></tbody>
                  本文介绍了在JJAA2中呈现词典的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在使用URL缩短器(基于Werkzeug的Short演示应用)。

                  我有一个这样的词典-

                  ('1', {'target': 'http://10.58.48.103:5000/', 'clicks': '1'})
                  ('3', {'target': 'http://slash.org', 'clicks': '4'})
                  ('2', {'target': 'http://10.58.48.58:5000/', 'clicks': '1'})
                  ('5', {'target': 'http://de.com/a', 'clicks': '0'})
                  

                  在url_list中返回并由Render_Template使用的

                  def on_list_urls(self, request):
                      url_list = self.get_urls()
                      return self.render_template('list_urls.html',
                          url_list = url_list
                      )
                  

                  模板list_urls非常简单-

                  {% extends "layout.html" %}
                  {% block title %}List URLs{% endblock %}
                  {% block body %}
                    <h2>List URLs</h2>
                    <ul id="items">
                    {% for item in url_list %}
                      <li>{{ item }}</li>
                    {% endfor %}
                    </ul>
                  
                  {% endblock %}
                  

                  问题是,我似乎无法访问词典中的项目。

                  该行

                  <li>{{ item }}</li>
                  

                  是我要集中注意力的地方。如上所述,我得到了字典中键的列表。

                  <li>{{ item["target"] }}</li>
                  

                  不返回任何内容。所有的 {{user.url}}&Quot;>;{{user.username}} 文档中的键入内容似乎起作用。

                  请给我点子好吗?新手-温柔点。谢谢。

                  更新

                  感谢您的回复。

                  Ewan的答案有效,但使用了一系列词典。我想传递一个字典并呈现它(因为我想要一个非整数的项索引)。金佳也这么做吗?

                  还有-I错误表示url_list。更像是这样-

                  {'a': {'target': 'http://testing.com/test', 'clicks': '0'}, 
                  '1': {'target': 'http://10.58.48.103:5000/', 'clicks': '1'}, 
                  '3': {'target': 'http://slash.org', 'clicks': '4'}, 
                  '2': {'target': 'http://10.58.48.58:5000/', 'clicks': '1'}}
                  

                  进一步试验-传递字典会产生有关列表对象的错误。

                  {% for key in url_list.iteritems() %}
                  

                  UnfinedError:‘List Object’没有‘iterItems’属性

                  再次感谢。

                  仍然不明白为什么它认为我在传递列表,但现在让它工作了。

                  {% for key, value in url_list.iteritems() %}
                      <li>{{ key }} - {{ value["target"] }} - {{ value["clicks"] }}</li>
                  

                  打印出所有内容。非常感谢。

                  推荐答案

                  您的url_list应该如下所示:

                  url_list = [{'target': 'http://10.58.48.103:5000/', 'clicks': '1'}, 
                              {'target': 'http://slash.org', 'clicks': '4'},
                              {'target': 'http://10.58.48.58:5000/', 'clicks': '1'},
                              {'target': 'http://de.com/a', 'clicks': '0'}]
                  

                  然后使用:

                  <li>{{ item["target"] }}</li> 
                  

                  模板中的

                  将起作用。

                  编辑1:

                  您的模板认为您传入的是列表,所以您确定传入的是原始词典而不是我的上面的列表吗?

                  您还需要访问字典中的keyvalue(当您传递字典而不是列表时):

                  Python 2.7

                  {% for key, value in url_list.iteritems() %}
                      <li>{{ value["target"] }}</li> 
                  {% endfor %}
                  

                  Python 3

                  {% for key, value in url_list.items() %}
                      <li>{{ value["target"] }}</li> 
                  {% endfor %}
                  

                  这篇关于在JJAA2中呈现词典的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:Python-通过函数传递变量 下一篇:如何在JJUA中循环使用多个值的字典?

                  相关文章

                  1. <small id='qqPuU'></small><noframes id='qqPuU'>

                    <tfoot id='qqPuU'></tfoot>
                  2. <i id='qqPuU'><tr id='qqPuU'><dt id='qqPuU'><q id='qqPuU'><span id='qqPuU'><b id='qqPuU'><form id='qqPuU'><ins id='qqPuU'></ins><ul id='qqPuU'></ul><sub id='qqPuU'></sub></form><legend id='qqPuU'></legend><bdo id='qqPuU'><pre id='qqPuU'><center id='qqPuU'></center></pre></bdo></b><th id='qqPuU'></th></span></q></dt></tr></i><div id='qqPuU'><tfoot id='qqPuU'></tfoot><dl id='qqPuU'><fieldset id='qqPuU'></fieldset></dl></div>
                    • <bdo id='qqPuU'></bdo><ul id='qqPuU'></ul>

                    <legend id='qqPuU'><style id='qqPuU'><dir id='qqPuU'><q id='qqPuU'></q></dir></style></legend>