Django入门:学习资源介绍与知识储备
创始人
2024-05-01 10:20:37
0

Django入门:基本知识

熟悉python和django

Django 是基于 python 的,所以在开发前需要熟悉相关的技术.

python 推荐几本比较好的书,包括:

learning python
python cookbook
熟读 Django 的 官方文档 和相关的书籍,这些都是必须。比较好的书籍有:

Django Book
Pro Django
Practical Django Projects
更多参考 django相关资源.

其它的相关技术

作为web开发的程序员,还需要了解其它的相关技术,包括:

html
css
javascript ( jquery 等)
ajax
网络知识和标准,如 http 协议, TCP/IP网络架构等.

Django入门:可用的资源

掌握了上面提到的基本知识外,我们对 python, Django 及web开发的相关技术有了一定的熟悉,也对 python 和 Django 的 哲学也有一定的了解,如 Don't Repeat Yourself,Keep It Simple, Stupid, Don't Reinvent Wheels 等.

所以,在开始一个项目之前我们需要了解已有哪些可用的资源.

而在可用的资源中,最需要跟踪的一个项目就是 pinax ,它提供了站点所必须的一些常用功能,而 所采用的方式便是提供一些 可复用的app, 使得我们很容易集成到我们的环境中, 或者基于 pinax 二次开发。

除此之外,还需要了解一些特定领域的相关资源,如:

商店 satchmo
地理 GeoDjango
OpenId django-openid

等等

在获得特定领域的相关资源后,会大大地提高开发的效率,从而降低成本。

Django入门:高级知识

掌握上面提到的技术,这时就基本上是一个合格的 Django 程序员了,但是除此之外,还需要了解一些高级的知识.

使用virtualenv+pip来构建独立的开发环境

virtualenv 用于建立一个独立的(与其它module)的虚拟环境,从而使得不同的虚拟环境下的 程序可以依赖于不同版本的module,例如某个django project是基于0.96的,而另外的project是基于 1.1的,所以就必须有不同的虚拟环境。

使用 pip 来 复制 已有的依赖。 pip 是用来取代 easy_install 的,除此而外, 我们还可以很方便地使用 pip 来 复制 我们当前的工作环境。例如,我们建立一个requirements.txt 文件 来记录我们当前工作环境中的相关依赖程序,然后输入 pip install -r /path/to/requirements.txt, 那么相应的 依赖软件会自动安装。前提是你的系统已经安装了 pip.

除此而外,当你需要部署一个django项目时,可以使用 wsgi 很方便地进行部署。

Django入门:使用fabric进行部署

参考 Deploying Python Web Applications

另外,我们还可以使用 python 的强大功能,来实现例如配置文件的路径自适应, 利用调试状态来设定特定的属性等.

推荐的开发流程

可使用下面的开发流程来进行 Django 的开发(假设是从新开始一个项目的):

使用 virtualenv 建立相应的独立环境
使用 easy_install 和 pip 安装相应的依赖模块
多人开发时可将当前的所有模块 复制 给同事( pip 有 feeze 命令来输出当前环境下的所有依赖模块及版本,以保证所有的开发人员使用相同的代码库)
为服务器也建立相应的独立环境,并使用 fabric 进行自动化部署.
***,使用 wsgi 和web服务器来发布产品
结论

利用 Django 的 复用, 快速开发 等特性来进行Web开发, 其实是有一定的规律可循的, 除了上面介绍的一些开发知识(技巧)外,如果在开发中你发现某个过程很繁琐,你这时候就要考虑去调研 是否已经存在相关的解决方案.而不要一味地,耗时地去完成.

本文来自朱涛的博客:《Django开发必知必会》

【编辑推荐】

  1. Python框架更新:Django 1.1修炼一年始出炉
  2. 实现Django的控制层和表现层
  3. Django模块的部署
  4. Django简介以及模型定义概述
  5. Python框架Django 1.0版将于9月2日发布

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...