Django“apps”文件夹仍然相关吗?

时间:2017-09-12 20:46:40

标签: django

几年前我读过的某个地方(两勺Django 1.4?)建议在Django项目中有一个“apps”文件夹,它包含所有应用程序。

Repo folder
-- Project root folder
   -- apps
      -- app 1
      -- app 2
   -- settings etc

但只是快速阅读“Two scoops of Django 1.8”,首选项目结构中没有提及“apps”文件夹。

Repo folder
-- Project root folder
   -- app 1
   -- app 2
   -- settings etc

我错过了什么?为什么他们删除了这个文件夹?

2 个答案:

答案 0 :(得分:0)

就像@marcusshep所说的只是偏好,无论如何你想把你的应用程序放在这个文件夹中,你可以在BASE_DIR var sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))之后添加这一行。有了这个,你不必使用apps.app ...,就像那个文件夹不存在

答案 1 :(得分:0)

我个人在这个问题上来回走动。

django的新默认布局有些令人困惑 - 有两个文件夹 - 一个用于核心软件,另一个用于您的应用程序。

我遇到的问题是将你的应用程序添加到PYTHONPATH的顶层,另外一个软件包就像PyPi这样的地方安装会干扰你的。仅仅因为这个原因,我建议在app文件夹中“命名”你的应用程序。我把'命名空间'放在引号中,就像'myspecialproject'和'myspecialproject.apps.payments'这样的东西比在顶层有'付款'要好得多,这可能会受到其他包的破坏。

所以是的,我建议在你的项目中使用一个apps文件夹。