您的位置:首页 > 编程语言 > Go语言

Django 1.6 最佳实践: Django项目的布局结构和目录结构

2014-09-07 17:26 676 查看



作者: Desmond
Chen, 发布日期: 2014-05-16, 修改日期: 2014-05-16

不同的程序员对于项目布局都有着不同的见解, 在本文中, 我们会介绍我们使用的布局结构. 这种结构应该也是使用最为广泛的结构了.


1. Django默认的项目部局

当我们使用django-admin.py startproject mysite 和 django-admin.py startapp my_app 建立新的Django项目时, Django默认的结构如下:
mysite/
manage.py
my_app/
__init__.py
admin.py
models.py
tests.py
views.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py


在Django默认的项目部局中, 存在着一些问题, 特别是在部署到真正的服务器时, 这些问题会越发的明显, 下面我们会一一阐述这些问题:


2. 最终的项目布局

我们使用三层结构来布局我们的Django项目: 最外层是git仓库, 中间层则是django-admin.py默认的生成的项目层, 最里层则是设置层:
repository_root/
django_project_root/
configuration_root/


a. 最外层

最外层是整个项目的容器, 除了包括django程序外, 还包括README.rst, docs/, .gitignore, requirements.txt等用于部署到服务器的 必须文件或目录. 这样这些文件便可以通过git管理, 方便开发和维护的使用.

README.rst文件和docs目录是用于介绍本项目的文档, 方便程序员了解项目的基本功能等, 我们会在今后详细介绍这一文档.

.gitignore文件是git版本控制系统的设置文件之一, 用于设置本仓库中需要忽略的文件或目录, 既不需要保存版本记录文件或目录.

requirements.txt则记录着本项目中用到的Python模块和版本的列表, 通常是通过pip freeze获取的. 我们会在今后详细介绍这一文档.


b. 中间层

中间层则是由django-admin.py生成, 也就是django默认的项目布局, 中间层生成时, 也包括了最里层: 设置层. 这一层中包括了media目录, static目录, templates目录, 和Django app.


c. 最里层

最里层设置层中, 包含了django-admin.py生成的设置文件, 包括settings.py, urls.py等文件.


3. Virtualenv

我们建议将所有virtualenv文件放在统一的目录下, 如果你使用virtualenvwrapper的话, 它位于~/.virtualenvs/中. 并且, 这些文件没有必要保存到git版本管理中, 因为我们已经保存了requirements.txt文件.

原文链接: http://www.weiguda.com/blog/5/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: