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

来源:互联网 发布:sql server好学吗 编辑:程序博客网 时间:2024/05/17 11:32

上次说到了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_literalsfrom django.http import HttpResponsefrom django.shortcuts import renderfrom django.template import loader,Context,Templatefrom django.shortcuts import render_to_responseimport datetimedef 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 urlfrom blog import viewsurlpatterns = [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时间,当然这也只是传递了一个简单的参数,还可以传递更为复杂的参数,下一次再说吧。

阅读全文
0 0
原创粉丝点击