对于一个初学者,在实际的开发环境中,应该采用什么的样的工具来开发django呢?
我想环境至少应该具备的特性有:
多版本python环境的支持
版本控制
自动测试框架
数据库支持迁移
部署的自动化
参考文档
本文试图针对以上问题,总结一个django开发的“标准的工作流程”。
前期准备
python软件已经安装
本文以 ubuntu 12.04 64位 作为环境举例
一、Python虚拟环境的搭建
使用工具virtualenv搭建Python虚拟环境,主要希望解决几个问题:
隔离项目之间的第三方包依赖,如A项目依赖django1.2.5,B项目依赖django1.3。
为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻。
操作步骤
假设需要建立一个名称为 ELC 虚拟环境
1. 安装 virtualenvwrapper (virtualenv的命令包装) ,会自动安装 virtualenv
$ sudo pip install virtualenvwrapper
2. 修改 ~/.bashrc ,把以下内容加入.bashrc 的尾部
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/directory-you-do-development-in
source /usr/local/bin/virtualenvwrapper.sh
然后执行命令让virtualenvwrapper命令生效
$ source .bashrc
3. 建立 ELC 环境
$ mkvirtualenv ELC
4. 检查 env 的环境
提示符变为 (ELC)[bl@bl-family:~]$
which python 输出为
/home/bl/.virtualenvs/ELC/bin/python
二、安装django
假设准备安装最新的django版本。
操作步骤
1. 保证提示符是 (ELC)的情况下,也就是在 ELC虚拟状态下
pip install django
如果出现 Cannot fetch index base URL https://pypi.python.org/simple/ 错误 参考这里解决
2. 验证安装情况
(ELC)$ which django-admin.py
返回结果
/home/bl/.virtualenvs/ELC/bin/django-admin.py
三、建立初始的django项目
假设准备建立一个名称为 ELcloud 的django项目。
操作步骤
1. 保证提示符是 (ELC)的情况下,也就是env状态下
(ELC)$ django-admin.py startproj