Django视图(views)与网址urls

Django的运行流程如下
浏览器请求 ——> urls ——> views ——> models

将响应发送浏览器  < ——templates
 1. 浏览器向网站请求一个网页,Django根据url 调用具体的业务逻辑views中的函数或者类
 2. views从models中取得数据库中的数据,models数据库相关操作模块,如果不需要数据库数据,则不需要调用models。
 3. views将处理好的数据转发给templates
 4. templates将数据渲染成具体的HTML,
 5. Django将渲染后的HTML发送给浏览器。
 6. 结束 

url.py
      urls.py模块 其实就是一个 url-views映射表。
urls.py通过 使用正则表达式匹配的url 与 views中的某个函数 相映射。格式如下
                    [(url,views_func)]
      浏览器向Django发送一个请求url,Django在urls.py中查阅 该url所映射的 views中的函数,并调用此函数做后续业务处理
       views_func 必须与 views中的函数名一样。

views
     这个单词是视图的意思,但是这个模块准确来说应该成为控制层(或者模具)。
    views接收用户请求,并做后续的业务逻辑处理,比如从数据库获得数据(这就需要使用models了),逻辑运算等。然后讲处理好的数据转发给 Templates层,templates渲染得到的数据,并生成动态HTML文件。Django在将HTML响应给浏览器。
       由上述可知: views层 做的是 调度——分派业务等,就像公司的客服一样,接到电话根据客户需求转接到 技术部,售后部,还是售前部等。
      视图views更应该是templates
templates层
      templates文件夹内是html模板文件,Django内部的templates层更具得到的数据,将模板html渲染成真正的html文件,并发送给浏览器。
      templates层是Django内部的,我们不需要考虑那么多。我们关注的是templates文件夹内的模板HTML。只需要在模板HTML内用模板语言填充数据即可。

你可能感兴趣的:(Django视图(views)与网址urls)