您的位置:首页 > 编程语言 > Python开发

PythonWeb开发Django框架(三)模板Templates初步

2017-07-07 16:33 567 查看
上次说到了views.py文件和urls.py文件的配合使用,能够完成一个简单的在浏览器显示HelloWorld的站点。

当然如果每次都是我们自己在HttpResponse()函数里面写当然是不正常的,这也达不到好的效果,所以Django不同于Java的Strust2框架的MVC设计模式而是采用MVT的设计模式,引用了模板的概念,其实就是控制HTML的一种模式,类似于PHP中的Smarty,实现HTML代码和PHP代码的交互。(说这么多,就是为了装逼,其实我也就了解这么多,只不过我是想通过学习新的知识的同时将之前学过的java和PHP再回忆一下)。那么说到MVT,学过java的或是知道MVC的你们可以将Django里面的M对应MVC中的M就是方便处理数据库的。将Django中的V视作MVC中的V+C因为Django利用自己的URL来控制访问视图(说的不对的话,还请多多指正)。Django中的T呢就是模板的意思啦,也就是用于显示数据的页面的效果啥的啦。

OK,说这么多,那现在就进入正题吧!

1.在项目目录下修改setting.py


2.修改完在对应的APP目录下新建一个名为templates文件夹,里面存放就是我们想要的HTML文件

3.在views.py中写入如下代码:

from __future__ import unicode_literals
from django.http import HttpResponse
from django.shortcuts import render
from django.template import loader,Context,Template
from django.shortcuts import render_to_response
import datetime

def simple(request):
now = datetime.datetime.now()#获取时间
t = loader.get_template('test.html')#引入模板
c = {'title':'Template','now':now}#传递的值
html = t.render(c)#加载模板
return HttpResponse(html)

4.在urls.py中进行配置:
from django.conf.urls import url
from blog import views

urlpatterns = [
url(r'^blog/temp/$', views.simple ),

]


5.在blog/templates文件中新建一个test.html,编辑:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ title }}</title>
</head>
<body>
这是测试页面,当前时间为{{ now }}
</body>
</html>

6.运行这个项目就ok啦



在这里就简单的将视图和模板联系起来啦还传递了参数title标题和now时间,当然这也只是传递了一个简单的参数,还可以传递更为复杂的参数,下一次再说吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  django