django collectstatic:如何保持项目结构?

时间:2017-06-30 21:52:11

标签: python django

目前,collecstatic在一个目录中收集项目应用程序的所有文件(STATIC_ROOT)。

应该怎样做才能保留静态文件的项目结构: STATIC_ROOT /应用1 .. STATIC_ROOT / APPN STATIC_ROOT / App3的

感谢

2 个答案:

答案 0 :(得分:0)

文档recommends namespacing static files

  

静态文件命名空间

     

现在我们可能能够将我们的静态文件直接放在my_app/static/中(而不是创建另一个my_app子目录),但它实际上是一个坏的理念。 Django将使用它找到的名称匹配的第一个静态文件,如果在不同的应用程序中有一个具有相同名称的静态文件,Django将无法区分它们。我们需要能够将Django指向正确的,并且确保这一点的最简单方法是通过命名空间它们。也就是说,将这些静态文件放在为应用程序本身命名的另一个目录中。

确保创建一个以应用程序命名的内部目录,并将文件放在那里,例如

  • my_app/
    • static/
      • my_app/←这个目录
        • file1
        • file1
        • ...

答案 1 :(得分:0)

谢谢克里斯, 我找到了正确的解决方案:How should I structure my static app files in Django?

我刚刚将STATICDIR_FILES替换为:

onComplete()