您的位置:首页 > 编程语言 > Go语言

Django 模板调用

2015-09-18 15:13 375 查看
$1.Django 调用模板

1.1 Template、Context方法

包:from django.template import Template,Context

from django.http import HttpResponse

eg:

from django.template import Template, Context

from django.http import HttpResponse

import datetime

def current_datetime(request):

now = datetime.datetime.now()

t = Template("<html><body>It is now {{ current_date }}.</body></html>")

html = t.render(Context({'current_date': now}))

return HttpResponse(html)

1.2 get_template、Context方法

包:from django.template.loader import get_template

from django.http import HttpResponse

首先在setting.py文件中配置模板文件夹的路径(在TEMPLATE_DIRS的列表中)

eg:

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)

1.3 reder_to_response()方法

包:from django.shortcuts import render_to_response

不需要导入get_template、Template、Context 和 HttpResponse

eg:

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})

locals()方法:是Python的内建函数,它返回的字典对所有局部变量的名称与值进行映射。

def current_datetime(request):

current_date = datetime.datetime.now()

return render_to_response('current_datetime.html', locals())

1.4 include模板标签

{% include %}:该标签允许在(模板中)包含其他的模板内容。标签的参数是所要包含的模板名称,

可以是一个变量,也可以是用单/双引号硬编码的字符串。

1.5 模板继承

本质上来说,模板继承就是先构造一个基础框架模板,而后在其子模板中对它所半酣站点公用部分和定义块进行重载。

eg:

1)定义基础模板

eg:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html lang="en">

<head>

<title>{% block title %}{% endblock %}</title>

</head>

<body>

<h1>My helpful timestamp site</h1>

{% block content %}{% endblock %}

{% block footer %}

<hr>

<p>Thanks for visiting my site.</p>

{% endblock %}

</body>

</html>

2)继承基础模板

eg:

{% extends "base.html" %}

{% block title %}The current time{% endblock %}

{% block content %}

<p>It is now {{ current_date }}.</p>

{% endblock %}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: