追梦人物❤️包子 博主
一直走在追梦的路上。

在学习django-rest-framework时收集的学习资料推荐

2018-03-2918161 阅读41 评论

由于我平时开发的 django 项目都比较小,所以一直以来都是使用 django 模板引擎渲染 html 页面这种比较原始的方式在开发。最近发起了一个 Django中文社区 的项目,因为是团队形式的开发,所以决定采用更加现代化的前后端分离的开发方式。技术方面前端选择了 Vue,后端基于 django 的话毫无疑问肯定是使用 django-rest-framework。

Django中文社区的项目已经进入正式的开发阶段了,django-rest-framework 框架之前从未接触过,相当于是从零开始学。从网上搜集资料的过程中发现了一些很不错的中文学习资料,在此推荐给想要或者需要学习 django-rest-framework 框架的朋友,同时也分享一下我的个人学习经验,希望对大家快速学习这个框架有帮助。

学习任何一个框架第一步自然是看入门教程,一般优秀的框架都会为初学者准备一个 tutorial,通过一个小小的例子来介绍框架的核心特性。django-rest-framework 自然也遵循这个惯例,我学习的第一步便是通读这个教程,并且根据教程的指导一步步在本机上完成了教程中的项目,还附带做了一些笔记。下面就是教程的地址:

django-rest-framework 官方入门教程

当然也有好心人翻译成了中文版放到 GitBook 上,喜欢阅读中文版的可以参考这个:django-rest-framework 官方入门教程中文翻译版

学习了入门教程,理解了框架中涉及的核心概念,明白了哪些模块提供哪些功能,能做哪些事情后就可以开始着手自己的项目开发了。我就是在读完了入门教程文档后开始着手 Django中文社区 API 的开发。当然面对更多复杂的项目,肯定会遇到入门教程中没有遇到过的需求,这个时候一方面是看其他人使用 django-rest-framework 开发的项目,学习他们的实现方式。比如我要实现社区的回复 API,就在 youtube 上找到了 一个很棒的使用 django-rest-framework 开发博客的教程,学习了它评论的实现方式,自己项目中的问题也就对照着解决了。下面是教程的 GitHub 源码地址,顺着项目的 readme 就能找到视频教程地址,注意 youtube 需要使用特殊方式才能访问:)

Blog-API-with-Django-Rest-Framework

另一方面则是根据需求找到 django-rest-framework 官方文档相应的内容,参考其详细的 API 文档,从中寻求问题的解决方案:django-rest-framework 官方文档

当然已经有国内的好心人将框架的 API 参考文档全部翻译成中文版了:Django REST framework API 指南

好了,有了这些资料,一边开发项目一边学习,由需求驱动着学习,慢慢地就会对 django-rest-framework 的使用有一个更加熟练的掌握。而随着使用越来越深入,对 django-rest-framework 理解也会越来越透彻,慢慢地就会不自觉开始探索它的源码实现,那时候相信你已经成为 django-rest-framework 框架的专家了,甚至可以在 GitHub 上为 django-rest-framework 项目贡献你的代码。

PSDjango中文社区项目在Django学习小组开发团队的协作下正紧锣密鼓地开发中,如果你对这个项目感兴趣并且熟悉 django-rest-framework 框架的话,欢迎加入我们,review 我们的代码,或者贡献你的代码。

-- EOF --

41 评论
登录后回复
Learn and Live
2019-04-08 15:38:29

不错,接下要用django-rest-framework + vue.js s升级自己的站点:https://stormsha.com

回复
木易王京
2018-09-10 09:19:15

Image

回复
asimovezh
2018-09-05 00:46:40

    

回复
wgwcolour
2018-08-03 14:38:29

# 测试

回复
张旭楠_Python wgwcolour
2019-01-30 13:52:53

我也测试一下

回复
张旭楠_Python 张旭楠_Python
2019-01-30 13:53:10

我在测试一下

回复
XuJiang
2018-08-01 16:22:48

<p>测试</p>

回复
XuJiang
2018-07-19 19:52:14

测试

回复
無贰叁_
2018-07-10 02:45:26

tttt

回复
995199148
2018-06-30 22:49:03

测试

回复
zhangbailong
2018-06-25 17:09:24

test

回复
灬ghost灬灬
2018-06-04 12:50:33

大佬好 ,我遇到个问题,我有一个course模型类,一个kind模型类,course中的kind字段和kind类是一对多关系,我现在想在kind模型类中根据对应的course个数对kind进行排序,该怎么做

回复
追梦人物 灬ghost灬灬
2018-06-04 18:01:00

django 数据库方法中的 annotate 方法看一下。annotate 计算出 course 数后就可以根据这个新生成的字段排序

回复
chenyang929
2018-05-21 17:56:29

Image

回复
程慕枫San
2018-05-15 21:20:07

多谢分享!

回复
mygit-li
2018-05-04 09:33:22

博主,readme里面并没有 视频地址,能否给一下?

回复
追梦人物 mygit-li
2018-05-04 17:14:35

Google "Blog API with Django Rest Framework youtube"

回复
mygit-li 追梦人物
2018-05-04 17:16:14

thanks!

回复
b2scrip 追梦人物
2018-06-18 14:13:31

test only

回复
张旭楠_Python mygit-li
2019-01-30 13:53:39

测试一下

回复
gitliuhao
2018-05-03 00:17:21

博主,有没有推荐的博客模板呀

回复
半夏的距离 gitliuhao
2018-07-12 11:11:58

http://www.cssmoban.com/这个网站上有好多模板,自己下一个就行了

回复
话多起腻
2018-04-24 22:42:57

安装完依赖库后迁移数据库出现如下错误,特请教博主,是博主的blog项目
Image

回复
追梦人物 话多起腻
2018-04-25 11:15:46

你需要指定django使用的settings文件,并在settings文件中添加SECRET_KEY

回复
话多起腻 追梦人物
2018-04-25 21:27:02

我是用pycharm打开的manage.py的setting.py配置有问题,解决完启动后,静态文件无渲染,可能是https的错误

回复
Hopetree
2018-04-08 16:51:49


感谢博主的推荐,现在这个都想把知识变现的时代,很少有像博主这样无偿把项目的开发全过程和经验分享出来的了,学习到了很多

回复
追梦人物 Hopetree
2018-04-10 13:58:19

谢谢!但如果我认为好的教程说不定也会考虑收费的😁😄

回复
Butonix 追梦人物
2018-05-18 20:21:16

hgjhjhb

回复
Michael
2018-04-03 23:39:36

开发侦探社小程序和tg版也是我第一次用PHP学习并开发API,接下来我也要学习vue和Django,期待博主的新产品亮相。

回复
追梦人物 Michael
2018-04-04 11:59:41

哇塞,社长大驾光临!我也在学习 Vue,一起交流学习经验呀!

回复
Michael 追梦人物
2018-04-04 14:29:44

微信上多多交流。

回复
Michael
2018-04-03 23:34:05

社长前来支持!

回复
chuanleixu
2018-04-02 15:45:52

博主中文社区的github上加个readme吧,不清楚博主用的python版本和django版本。

回复
追梦人物 chuanleixu
2018-04-02 16:37:47

谢谢建议,很快会完善仓库的基础设施建设。

回复
liuzhichao
2018-03-30 16:46:41

这个有需求文档吗

回复
追梦人物 liuzhichao
2018-04-02 16:38:03

很快会发布,谢谢!

回复
sailsgo
2018-03-30 14:32:25

aaaaaaaaaaa

回复
sailsgo sailsgo
2018-03-30 14:32:42

zzz

回复
pyli.xm sailsgo
2018-05-09 09:13:06

测试

回复
william302 sailsgo
2018-06-07 11:36:23

测试

回复
無贰叁_ william302
2018-07-10 02:43:58

。。。

回复