Google App Engine:基本的Django问题

Nic*_*ner 0 python django google-app-engine

我正在使用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))
Run Code Online (Sandbox Code Playgroud)

menu.html:

<ul>
    {% for page in menu_items %}
    <li><a href="{{page.href}}">{{page.name}}</a></li>
    {% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)

HTML制作:

<li><a href=""></a></li>
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

avi*_*ldg 5

menu_items = {'menu_items': [{'href': '/', 'name': 'Home'},
                             {'href': '/cart', 'name': 'Cart'}],
              }
render('Views/menu.html', self, {'menu_items': menu_items})
Run Code Online (Sandbox Code Playgroud)

仔细看看这些线条.menu_items(字典)具有键menu_items,其值具有类型列表.而且你要传递menu_items(dict)来渲染,所以对于menu_items中的页面实际上是指'menu_items'(键).

只需将代码更改为:

menu_items = [{'href': '/', 'name': 'Home'}, {'href': '/cart', 'name': 'Cart' }]
Run Code Online (Sandbox Code Playgroud)

你做完了......