djangobook2 第7章的一个练习:template

做为一个练习,把下面这个view函数改用Django模板系统来实现,而不是手动输入HTML代码。

def display_meta(request):
    values = request.META.items()
    values.sort()
    html = []
    for k, v in values:
        html.append('<tr><td>%s</td><td>%s</td></tr>' % (k, v))
    return HttpResponse('<table>%s</table>' % '\n'.join(html))

然后……以下是代码……

settings.py中的模板路径配置

TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), 'templates').replace('\\', '/'),
)

views.py【一开始没有把values压入字典中。所以没有显示内容】

from django.shortcuts import render_to_response

def display_meta(request):
    values = request.META.items()
    values.sort();
    return render_to_response('hello.html',  { 'values': values });

hello.html

<table>
{% for k, v in values %}
    <tr><td>{{k}}</td><td>{{v}}</td></tr>
{% endfor %}
</table>

djangobook2 英文版:http://www.djangobook.com/en/2.0/chapter07/ 中文版:http://djangobook.py3k.cn/2.0/chapter07/

 

转载请注明: 转载自http://jyd.me/

本文链接地址: djangobook2 第7章的一个练习:template

Tagged on: ,

发表评论

电子邮件地址不会被公开。 必填项已用*标注