初学Django及Web

在学了几天爬虫后,领导让我用Python的web框架搭个网站出来,将爬到的数据显示在网页上。

于是,我又学了Django, 对于web一无所知的我懵懵懂懂踏上了旅程,翻翻工作记录文档,大概快有一个月了吧,加上自己的磨磨蹭蹭,现在依然感觉还在门外徘徊。争取每个月至少更新一篇博客,6月马上见底了,我想,很深的技术大概是讲不出来了,索性记一下新路历程吧,就当是给新手指条路,避免一些坑。

首先,我初学Django,参考资料是菜鸟教程的Django教程,附链接http://www.runoob.com/django/django-tutorial.html

这个教程还算简单,回过头来看还算简单,照着做能搭出一个简单的 Hello World网站。模仿的过程中,我开始学习web的一些知识,网站的MVC架构
慢慢了解了,模型其实就是外行人认为的数据库,模板是前端,通过views传给controllor,这时后台来处理网站所需的各种请求。

这个时候,领导找我了,问我当前进展。

我跟他说,我在用template写前端,并把需要的数据传递过去。然后领导给我上了一课。

这样做的话,前后端耦合性强,无法实现真正的前后端分离的开发思想。其实后端需要做的仅仅是把数据传输给前端,那数据怎么传输呢,

提供函数和接口,通过JSON。

以前我只知道JavaScript是一种动态加载的语言,它可以代表前端和后台进行数据交互。于是参考前辈们的后台代码,他们的views里面只有post或者get方法,

最后返回了一个dict,我模仿着写,倒也是写出来了,期间我知道了一个新工具Postman,开发调试用的。但是很迷茫啊,完全不懂怎么回事。

然后各种百度和请教,终于明白,原来人家写的代码还用了rest-framework。这是基于Django的与MVC框架不同的一个实现前后端分离的框架。

这几天看了rest-framework里面的APIView、Forms、Serializer。终于搞清楚的一点是view并不对应着前端显示的一个页面,而对应的是每一个链接url,这个大概是思考了一天,

翻了许多个网页之后,看到廖雪峰的JavaScript教程里的WebAPI时顿悟的。想想自己,真是笨啊。

不得不说,web涉及到的知识真是太多,学习的过程中,首先要搞清楚大框架,理解大逻辑,然后一点一点地向里面添加具体的知识,才可能做到游刃有余。

你可能感兴趣的:(Python,从入门到放弃)