如何在django中构建项目目录?

时间:2013-10-31 03:34:40

标签: django project structure

假设您正在构建Google网站。 (好大梦)

Google有网络搜索/ youtube / email / news / etc ..

对于这个网站,我想构建我的django目录,如

Google/
       search
       youtube
       email
       news

等等。

我如何构建这样的网站?
虽然我不希望将任何类别发布为应用程序,但为每个人创建一个应用程序?

常见的东西(例如用户模型,实用程序模块,装饰器......)会在哪里创建 common_app

1 个答案:

答案 0 :(得分:1)

应用程序是围绕中心目标的django项目的可重用组件。应用程序无需直接映射到您网站的网址结构。虽然是一个标准的结构Django应用程序与一些管理命令,例如tests.pymodels.py,静态文件在/static/你不需要有任何配合它是一个应用程序。例如,South是一种流行的django应用程序,用于提供数据库迁移。它向manage.py添加了一些管理命令。

当您添加功能并且它不直接映射到应用程序的目的时,只需创建一个新功能。因此,不要将其视为 common_app ,而应考虑应用程序的用途以及其他应用程序如何使用它。

在我的项目中,我倾向于创建一个base应用程序来处理基本模板中使用的基本模板和静态资产。我将创建一个accounts应用程序来处理用户模型并实现密码重置等功能。要处理来自我网站任何部分的全局通知,我将创建一个alerts应用程序。该列表可以继续执行许多常见功能,但它以一种围绕一个函数的方式进行分组,并且就像它将被分发一样。

因此,在您的具体情况下,您可能至少拥有每个域的申请,例如searchyoutubeemailnews ,也是您可能希望在核心域中使用的每个通用组件的应用程序。