看完了《简明python教程》,知道Django是python最常用的框架,是否需要专门地开始Django的学习?用什么书/社区?
顺便问一下,学完python和Django之后,对于开发一个网站而言可以做什么?可以完成整个后台?还是数据库?
回复内容:
读 Django tutorial。这是一份很好的上路文档。
接下来,你需要做的是认真读 ORM 文档,了解 Django 的设计思想。
在接下来,你会发现你自己已经开始读 Django 核心源代码,因文档永远是不足的。
过早的优化是万恶之源。
在有新的 Django release 时,永远先读发行注记以便了解新版本带来的新特性以及被废弃的和将被废弃的 API。
一点适用于几乎所有的学习过程的建议是不要读中文文档,永远。否则你会发现你在翻译中文文档回英文以便理解其描述的含义,并猜测译者翻译时因不了解专有名词造成的猜测以得到的翻译内容的内容相对应的含义。
1. 读 The Django Book
中文版,照着做
2. 读 Django documentation
完全理解,有问题,直接操作
3. 读源码, 最新的是1.6吧。
4. 自己写个相关的心得。
请按1~4顺序执行。
感谢@virusdefender 提示,中文的django book有一些错误,及过时的地方。
我当时看的是英文的 :-)
直接读django的官方文档,写的已经很完善了。
说说我自己的学习过程:
文档:目前关于Django的中文书籍不多,我是从 The Django Book
开始学习的,这个文档可以帮助入门。
一些很细节性的东西,就需要去 Django documentation
查阅了。
实际使用Django一段时间后发现, 更多的时候是在查阅Django documentation
。
视频教程:网易云课堂:Python Django 快速Web应用开发入门课程详情
多贝网:
http://www.duobei.com/search?word=django&c=all一个实例:Welcome to Django by Example
我的实践:用Django,可以做好业务逻辑层,当然也可以生成HTML,可以生成数据库表,但我的项目是HTML和数据库都是单独开发,配合Django做表单、数据库验证相关的东西。
得益于Python丰富的模块,Django可以做很多事情,而且开发效率也很高。
至于缺点,貌似开发出的产品性能相对较差。
题外话:要开发网站,最好再学习一下数据库、HTML+JavaScript+CSS、HTTP等知识。
我的Python快速教程
最后部分,是Django的教程。你可以参考一下。
学完之后,可以完成整个后台。
官方文档我记得有中文版,先认真看一遍,有个大概印象,知道那个功能该怎么写,用到哪些django的功能。然后开始写,边查文档边写,报错直接Google。失败几次不要紧,认真挺过这一关,再学其他web框架就顺利了,很多相似之处,一点就通。
我当时是从flask转过来的,直接边看文档边写,需要什么功能就是去查。我用flask的时候也是直接写,Python当时还不会,看了一两天语法就写,遇到要时间格式化呀,不会里面去查就会了。
语法不是问题,文档也不是问题,实践更能记住,也更有体会。或许有人说我这样不系统太马虎。但是一开始学习得太深入,其实根本不懂,看了一点感觉都没有。当去实践,有的感悟,再去看看文章书籍,感悟就不一样了。循序渐进,快速开发,自己用得舒服,问题能解决就OK。
学完 python 想学 django,正好我最近组织了一个
django 新人学习小组,并开始一边学习一边做项目实践。正好目前进行到第一周,小组正在做一个 Blog 程序,虽然简单,但是足以带你进入 django 开发的大门,欢迎 follow 我们,并期待您的建议和意见。
简单介绍一下小组的运作模式:我们在每个周末会开一个小组讨论会,讨论下一周的开发内容,每个人根据其分配的任务去学习相应的文档。但是不仅仅是做完自己的工作就完事了,每个人在学习的过程中还要把自己学的东西讲给全小组的人听(主要是写成一份和自己工作相关的文档),让其他的组员都明白你做了什么,这样你不仅学到了自己该学的,也学到了其他组员学到的东西。
目前我们正在进行第一周的项目,第一周的学习文档已经出来了,发布在简书上:Django学习小组出品:一起来做一个简单的Blog第一周文档(教程)
。我把摘要部分贴出来,感兴趣的朋友可以去简书上阅读原文。
此外欢迎关注我们的 github 组织首页
,所有项目的相关源代码都会上传到 github 上。每周更新,但是代码量不大,确保在新人的接受范围内,这样可以让新手完全跟上我们的学习和开发进度。
第一周文档的摘要:这一周我们小组完成了 Blog 首页的搭建。本节是 django blog 项目的开篇,是 django 学习小组的集体学习成果。django学习小组是由我发起的一个促进 django 新手互相学习、互相帮助的组织。小组在一边学习 django 的同时将一起完成三个项目:
- 一个简单django blog,用于发布小组每周的学习和开发文档
- django中国社区,为国内的 django 开发者们提供一个长期维护的 django 社区,聚集全国的 django 开发者到这个社区上来
- django 问答社区, 类似于segmentfault 和 stackoverflow但更加专注(只专注于 django 开发的问题)的问答社区
目前小组正在完成第一个项目,本文即是该项目第一周的相关文档。
更多的信息请关注我们的 github 组织首页,本教程项目的相关源代码也已上传到 github 上。
同时,你也可以加入我们的邮件列表 django_study@groups.163.com ,随时关注我们的动态,我们会将每周的详细开发文档和代码通过邮件列表发出。
如有任何建议,欢迎提 Issue,欢迎fork,pull request,当然也别忘了 Starred 哦!
每周更新,敬请关注
——by Django 学习小组,期待您的建议和意见
我是从django官方的tutorial + the django book开始的
然后,如果你是一个熟悉Wordpress的blogger,可以做个类似wordpress的、带有自己个性的多人blog系统,做完之后,django就合格入门了
再然后,你可以研究一下,如何给你的blog系统开放个RESTful API
ps:别忘记部署,我通常是基于nginx和uwsgi进行部署
20160309修改
根据这段时间的学习,我又重构了我的博客,欢迎参观点点寒彬的博客
,源码目前还在改动,改动完毕后会上传到github。前端用的是Bootstrap实现的。
——————————————————分割线——————————
楼主可以看看我自己写Django的时候做的笔记吧,这是我的博客wyb199026的博客
。一些细节的地方我也都写了,这个是成品网站点点寒彬的博客
,我用SAE搭建的,目前还有一些功能需要优化。源码地址:diandianhanbin/MyBlog · GitHub
其实我觉得最好的学习方式就是直接看官方的文档了,我就是根据自己的想法参照官方文档写出来的,别人的东西只能给你参考,最终还是需要自己研究后写出来的才有意义。
PS:我也是新手
我是通过tango with django 入门的:How to Tango with Django: A Python Django Tutorial
, 此外官方的Tutorial也刷过一遍,受益不少。