首页 » python编程, web服务 » python djnago框架中模板和标签的使用笔记

python djnago框架中模板和标签的使用笔记

时间:2013-08-28作者:felix.chan分类:python编程, web服务评论:0

djnago 常用的标签:

{% if 条件 %} 
...
{% else %}
...
{% endif %}
 
 
{% ifequal %}
...
{% endifequal %}
 
{% ifnotequal %}
...
{% endifnotequal %}

注意:只有模板变量,字符串,整数和小数可以作为 {% ifequal %} 标签的参数。
Python的字典类型、列表类型、布尔类型,不能用在 {% ifequal %} 中,只能使用 {% if %} 。

{% comment %}
.....
{% endcomment %}
{% for item in item_list %}
...
{% endfor %}
{% include template_name %}
{% block var_name %}
...
{% endblock %}
{% extends "base.html" %}

for循环中常用到的变量:

forloop.counter
forloop.counter0
forloop.recounter
forloop.recounter0
forloop.first
forloop.last
forloop.parentloop

过滤器:(过滤器通过管道符来实现传递)

{{ name|lower }}
{{ mylist|first|upper}}
{{ bio|truncatewords:"30" }}
{{ pub_date|date:"F j,Y }}
{{ str|length }}
{{ books|pluralize }}

模板的使用:

编辑配置文件:settings.py

TEMPLATE_DIRS = (
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    'C:/Users/Felix.Chan/django_test/django_test/files/templates',
)

编辑视图文件:views.py

from django.template.loader import get_template
from django.template import Context
from django.http import HttpResponse
import datetime
 
def current_datetime(request):
    now = datetime.datetime.now()
    t = get_template('current_datetime.html')
    html = t.render(Context({'current_date': now}))
    return HttpResponse(html)

使用render_to_response()优化视图:

from django.shortcuts import render_to_response
import datetime
 
def current_datetime(request):
    now = datetime.datetime.now()
    return render_to_response('current_datetime.html', {'current_date': now})

include

模板的继承:
使用继承的一种常见方式是下面的三层法:

1、创建 base.html 模板,在其中定义站点的主要外观感受。 这些都是不常修改甚至从不修改的部分。

2、为网站的每个区域创建 base_SECTION.html 模板(例如, base_photos.html 和 base_forum.html )。这些模板对 base.html 进行拓展,并包含区域特定的风格与设计。

3、为每种类型的页面创建独立的模板,例如论坛页面或者图片库。 这些模板拓展相应的区域模板。

原创文章,转载请注明: 转载自红防联盟www.rednat.com

本文链接地址: python djnago框架中模板和标签的使用笔记

|2|right
0 条评论

暂时没有评论!

发表评论

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

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>