Django-项目范围内的共同资源

Django-项目范围内的共同资源,django,resources,Django,Resources,我正在用Django做我的第一个项目,我开始考虑重新组合所有公共资源,如所有自定义模板标记、上下文处理器、通用视图等等。。。在一个应用程序中,如下所示: - project + templates + media + static - common // <- the common resources directory - template_tags __init__.py views.py context_processo

我正在用Django做我的第一个项目,我开始考虑重新组合所有公共资源,如所有自定义模板标记、上下文处理器、通用视图等等。。。在一个应用程序中,如下所示:

- project
  + templates
  + media
  + static
  - common // <- the common resources directory
    - template_tags
        __init__.py
      views.py
      context_processors.py
  + app1
  + app2
  + app3
-项目
+模板
+媒体
+静止的
-common/自从Django存在以来,“可重用应用程序”的争论就一直在进行,并且在许多方面早于Django。在任何情况下,你都能得到的唯一答案是做对你的项目有意义的事情

“可重用应用程序”依赖于其他应用程序来运行并不少见,所以这一部分真的不是问题。真正的目标永远是枯燥的(不要重复你自己)。如果您正在开发的功能可以在项目中的多个位置使用,甚至可以在您可能从事的其他项目中使用,那么它应该尽可能独立


我不会随意地将所有模板标签等移动到一个应用程序中。但如果它是一个多用途的模板标签,那么将其放在自己的应用程序中实际上是有意义的。这其实相当普遍。但是,如果模板标记特定于特定的应用程序,则它属于该应用程序。同样的咒语也适用于你提到的其他事情。

不是说这是一个重复的问题,而是与这个问题有关。他的问题是关于主页的,在这种情况下,它肯定应该是应用程序的一部分。我要求在多个appsA主页中使用的通用组件可以很好地被视为通用组件(或者至少不是应用程序的一部分);这也是我一直在努力解决的问题。这就是为什么你的问题让我想起了我链接到的问题。好的,谢谢,你的意思是没有任何模型的应用程序不是问题吗?当然。你的“应用程序”可以是任何东西,它不一定需要触摸数据库。它可能只是使用现有模型或contrib包、模板标记等的视图。