Django网络应用开发的5项基础核心技术包括模型(Model)的设计,URL 的设计与配置,View(视图)的编写,Template(模板)的设计和Form(表单)的使用。
在Django中view层起到的作用是相当于controller的角色,在view中实施的 动作,一般是取得请求参数,再从model中得到数据,再通过数据创建模板,返回相应 响应对象。但在一些比较通用的功能中,比如显示对象列表,显示某对象信息,如果反复 写这么多流程的代码,也是一件浪费时间的事,在这里,Django同样提供了类似的 "shortcut"捷径--通用视图。
from django.shortcuts import renderfrom django.shortcuts import render_to_responsefrom django.shortcuts import redirectfrom django.shortcuts import reversefrom django.shortcuts import resolve_urlfrom django.shortcuts import get_list_or_404from django.shortcuts import get_object_or_404
Django中将视图定义为一种函数,称其为视图函数(view function)。当Django框架接收到http请求的时候,从定义的urlpatterns中寻找url表达式进行匹配,一旦找到匹配的项,就将HTTPRequest以及匹配到的其他字符串作为参数,调用找到的视图函数,然后根据视图函数返回的HTTPResponse对象进行响应。
视图函数返回的response对象中包含一些头(Header)信息和内容(Content),通常通过模板来生成内容。django.shortcuts.render_to_response函数,接收一系列的参数,包括模板路径、context使用的字典、原始的context实例等。
from django.shortcuts import render
def index(request): context = {} return render(request, 'news/index.html', context=context)