我们简单总结一下上面的hello应用
- 浏览器输入http://127.0.0.1:8000/index/
http或https是协议类型
127.0.0.1是主机IP地址,这个是本机的loop地址,8000端口。服务是绑定在ip地址和端口号上,如果没有指定,默认80端口。
/index/表示路径 - Django服务端收到浏览器的数据请求,首先urls.py会做url分析,用正则表达式去匹配路径path(‘index/’,匹配到第一个就做视图映射,views.index指定的是demo/hello/views.py视图文件里的index函数。
- demo/hello/views.py视图函数接收Web请求(request),然后返回Web响应。响应可以是一个模板html文件、图片、重定向、xml等…
- 在这里它响应了一个模板文件index.html,这个文件默认存放在 项目/应用/templates/目录下。现在是个静态的html文件,模板可以根据需要动态地产生html文件。
- 浏览器收到Django的响应数据,渲染网页。
这个hello的应用,因为简单,没有涉及model的模块。model模块表示数据存取层,一般来说是对数据库的访问。
Django 的 MTV模式
- M表示模型(Model),就是数据存取层。处理与数据相关的所有事务,即如何存取、如何验证有效。Django把数据操作的行为抽象出来,不局限在某一个数据库的命令中,便于开发。
- T代表模板(Template),就是表现层。该层处理与表现相关的事务,即如何在页面或其他文件中显示。
- V表示视图(View),即业务逻辑层。该层包含存取模型及调取合适模板的相关逻辑。是模型Model和模板Template之间的桥梁。