将django模板放在我的静态目录中是一个好习惯吗?
collectstatic 无论如何都会复制静态目录中的所有模板文件。为什么不直接将静态文件放在静态目录中?
答案 0 :(得分:6)
不,完全没有。
模板不是静态文件。 collectstatic
不将模板文件复制到静态目录中。没有理由把它们放在那里。
答案 1 :(得分:6)
将我的django模板放在静态中是一种好习惯 ?目录
嗯,通常不行,因为它使得它们可以从外部调用(通过直接访问http://example.com/static/templates/base.html
)并且可以通过暴露模板标记和上下文变量来揭示一些内部数据结构。但是,有时这用于为HTML5应用程序上下文中的Javascript框架提供模板。
在该HTML5应用上下文中公开的模板不会使用任何Django的模板层,对于这样的用例,它可以说是完全分离前端和后端的更好解决方案。但是用例和实现在该领域有所不同。
collectstatic将复制静态中的所有模板文件 目录无论如何。为什么不将静态文件放在静态目录中 直接?
不,只有将它们存储在应用程序的static
目录下才会发生这种情况,这是一种错误的习惯(如果不是专门选择将模板公开给Javascript应用程序的话)。如果您将它们存储在templates/myapp
,则不会被复制。此外,它不会开箱即用,因为Django默认情况下不会查看STATIC_ROOT
模板。