4

根据这个问题的成功答案以及我在互联网上阅读的所有其他内容您很可能会将 Django 模板放在mySubAppX外部的文件夹中mySubAppX- 最常见myProject/templates/mySubAppX的是,模板是实际mySubAppX目录的同级目录,其中应用程序已存储。

为什么?尤其是当您将子应用程序模块化时,为什么?

4

2 回答 2

10

这不是规则,取决于。应用程序内部解决方案也有支持者

在集中模板方式中templates/app/template_name,定位模板速度很快,模板名称可以像app/item.html; 您也可以轻松地管理/移动整个目录到某个地方,例如内存磁盘。

另一方面,应用程序内部的方式,app/templates/app_template_name或者app/templates/app/template_name,更适合打包的应用程序。对于编辑,我的同事发现应用程序内的解决方案无论如何在Eclipse中开发更方便。

于 2012-11-24T05:58:10.110 回答
4

如前所述okm,这不是规则。Django 总是先在TEMPLATE_DIRS目录中查找模板,然后返回到应用程序/包目录查找模板。这就是为什么建议将应用程序模板放在它们的位置,以便可以快速找到它们。

您仍然可以将模板放在mySubAppX.

project/apps/mySubAppX/templates

为了使其高效,您可以将此路径添加到您TEMPLATE_DIRS的设置中,以便 Django 首先查找那里以找到模板。

TEMPLATE_DIRS = (
    'project/apps/mySubAppX/templates',
    #other apps template directories
)
于 2012-11-24T12:55:02.197 回答