如何搭建网站(一)——了解Django框架
关于Django的学习
学习web框架这类的抽象内容,光啃理论还是很难理解的。我觉得在了解一些基本概念后,就具体跟着某个项目做,学的更快。
推荐的学习教程(输入以下网址即可):
1.https://tutorial.djangogirls.org/zh/
这个教程是搭建Django Girl个人博客的网站,非常基础,很容易入门,感兴趣的同学可以尝试一个。
2. https://developer.mozilla.org/zh-CN/docs/learn/Server-side/Django
更详细的介绍了一些Django网站搭建的知识,在这里你可以了解更多的前端、后端知识。
我的经验就是:跟着做一些博客网站,一方面能接触到Django的大概知识点,另一方面,也会给自己一定的成就感。
慢慢的,你也会感受到搭网站的乐趣。
首先了解以下的基本概念。
什么web框架?
Web 应用框架,或者简单的说是“Web框架”,其实是建立 web 应用的一种方式。
简单理解:
当你想要拥有一个让所有人能访问的网站时候,需要构建一个站点。
构建一个web站点,你需要一些相似的组件:处理用户认证(注册、登陆、登出)的方式,一种管理站点的面板、表单、上传文件的方式等。
上述都是web开发程序员在实际开发过程中,面临的共同问题。所以那些程序员就联手创建了web框架(Django是其中之一)让你使用。
有个这个框架,你就可以基于这个框架,构建你想要的站点(站在巨人肩上)。
目前,市面上主流的web框架,是java和python编写的。
以java语言编写的框架有:SSM(Spring + SpringMVC + Mybatis),SpriNG Boot等等。
以python语言编写的有:Django,Flask等。
而想要了解web框架包含了哪些内容,我们需要知道,当有人向你的服务器请求网站时,会发生什么?
请求网站的过程:
1.当有人在网上浏览你的网站时,其实是发送了http请求。
2.接着,这个请求经过协议栈、网卡,路由,运营商等等到达web服务器。(想了解详细的过程可以看我之前写的文章:网络是如何连接的呢)。
3.这时候服务器的web应用程序根据客户的http请求(包括url或和可能的get或post数据)确定需要的内容,根据需要,从数据库中读取或写入信息,或者执行其他任务。
4.最后,该应用程序将返回对web浏览器的相应。客户就能从浏览器看到网页。(原理是将检索到的数据插入到html模板中的占位符来动态创建用于浏览器显示的HTML页面)
什么是Django?
Django是用Python写的web应用程序框架。它可以帮助你更快、更容易地开发web站点。
Django的设计模式:
采用MTV(Model Templates View 模型-模板-视图)模式。
- M 代表模型(Model):负责业务对象和数据库的关系映射(ORM)。
- T 代表模板 (Template):负责如何把页面展示给用户(html)。
- V 代表视图(View):负责业务逻辑,并在适当时候调用Model和Template。
深入了解django:
具体流程:
浏览器进行HTTP request;
Django根据URL分配至对应的View;
View进行数据库的操作或其它运算;
View层将数据发送到Template进行渲染,并传回HttpResponse内容;
浏览器根据HTTP response显示网页内容。
欢迎关注公众号:追求极简主义的程序媛,更多精彩内容,敬请期待。