Django中的重要概念:
一次web访问的实质:
1. 客户发送http请求到web服务回
2. web服务器返回html页面给客户
Django概述:
1. URL配置 建立URL和与响应函数之间的关系
2. 视图Views 响应客户http请求,进行逻辑处理,返回给用户html页面
3. 模型models 描述我们服务器存储的数据(数据库的表)
4. 模板templates 用来生产html页面。返回给用户的html,是由数据(模型)和模板渲染出来的。
blog示例:
编辑mysite/urls.py,加入如下代码:
url(r'^$', 'blog.views.showBlogList'),
url(r'^blog/(\d+)$', 'blog.views.showBlogList'),
在blog/views.py中添加:
from django.shortcuts import render
from django.http import HttpResponse, HttpResponseNotFound, HttpResponseRedirect, JsonResponse, FileResponse
from django.template import loader
from .models import Blog
# Create your views here.
def showBlog(request, blogId):
t = loader.get_template('blog.html')
blog = blog.objects.get(id=blogId)
context = {'blog': blog}
html = t.render(context)
return HttpResponse(html) def showBlogList(request):
t = loader.get_template('blog_list.html')
blogs = Blog.objects.all()
context = {'blogs': blogs}
html = t.render(context)
return HttpResponse(html)