Django 工作流程

1、宏观地看下Django是如何处理Http Resquest的,如下图

假设你已经在浏览器输入了 http://127.0.0.1:8000/index/,接下来浏览器会把请求交给Django处理。根据上图,我们知道Django需要根据url来决定交给谁来处理请求,那么Django是如何完成这项工作呢?很简单,Django要求程序员提供urls.py文件,并且在该类文件中指定请求链接与处理函数之间的一一对应关系。

在Django中的urls.py添加以下语句,即可指定请求链接与处理函数之间的一一对应关系。

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/$', views.index),#添加index路径配置
    url(r'^login_action/$', views.login_action),#添加index路径配置

]

这样当请求链接为http://127.0.0.1:8000/index/时,就会用views.py中的函数index()来处理请求。现在Django知道由index来处理请求了,那么index需要做哪些工作呢?

它需要加载返回内容的模板,这里比如说是index.html。

#创建views
def index(request):
    #return  HttpResponse("Hello Django")
    return  render(request,"index.html")

在模板方面,模板文件就是返回页面的一个骨架,我们可以在模板中指定需要的静态文件,也可以在模板中使用一些参数和简单的逻辑语句,这样就可以将其变为用户最终看到的丰满的页面了。
要使用静态文件,比如说css、javascript等,只需要用{% load staticfiles %}来声明一下,然后直接引用即可。

在数据库方面,Django给我们封装了数据库的读写操作,我们不需要用SQL语句去查询、更新数据库等,我们要做的是用python的方式定义数据库结构(在model.py里面定义数据库),然后用python的方式去读写内容。至于连接数据库、关闭数据库这些工作交给Django替你完成吧

原文地址:https://www.cnblogs.com/HZQHZA/p/7835233.html