【问题标题】:Google App Engine: Basic Django IssueGoogle App Engine:基本 Django 问题
【发布时间】:2010-03-03 03:59:41
【问题描述】:

我将 Django 模板与 Google App Engine 结合使用。我正在尝试打印菜单,但没有成功。

控制器:

menu_items = {
    'menu_items': [
        {
            'href': '/', 'name': 'Home'
        },
        {
            'href': '/cart', 'name': 'Cart'
        }
    ],
}

render('Views/menu.html', self, {'menu_items': menu_items})
# ...
def render(filename, main, template_values): 
    path = os.path.join(os.path.dirname(__file__), filename)
    main.response.out.write(template.render(path, template_values))

menu.html:

<ul>
    {% for page in menu_items %}
    <li><a href="{{page.href}}">{{page.name}}</a></li>
    {% endfor %}
</ul>

生成的 HTML:

<li><a href=""></a></li>

我在这里做错了什么?

【问题讨论】:

    标签: python django google-app-engine


    【解决方案1】:
    menu_items = {'menu_items': [{'href': '/', 'name': 'Home'},
                                 {'href': '/cart', 'name': 'Cart'}],
                  }
    render('Views/menu.html', self, {'menu_items': menu_items})
    

    仔细查看这些行。 menu_items(字典)有一个键 menu_items ,其值具有一个类型列表。而且您正在传递 menu_items (dict) 进行渲染,因此 menu_items 中的页面实际上是指“menu_items”(键)。

    只需将您的代码更改为如下所示:

    menu_items = [{'href': '/', 'name': 'Home'}, {'href': '/cart', 'name': 'Cart' }]
    

    你已经完成了......

    【讨论】:

      猜你喜欢
      • 2014-10-26
      • 2011-06-03
      • 1970-01-01
      • 2011-09-08
      • 1970-01-01
      • 1970-01-01
      • 2014-01-12
      • 2013-10-25
      • 2023-03-03
      相关资源
      最近更新 更多