我正在做一个Django项目,它被分成5个应用程序(每个应用程序都有3-6个模型)。作为一个整体,这个项目肯定是我会在其他项目中重用的东西,但只有当它包含所有的应用程序时才会有用,因为它们本质上是相关的。
因此,我想打包这个项目,使其在姜戈博士和Django炊具django包之后可重用。然而,这些例子只说明了如何使用一个应用程序进行打包。
根据我所读到的,有几种选择:
我计划使用选项3,因为我认为选项1太过了,而选项2被认为是错误的做法(请参阅这个职位和这个职位)。我在选项3中看到的问题是,使用此软件包的项目必须在INSTALLED_APPS中安装所有5个应用程序,如下所示:
INSTALLED_APPS = [
'project',
'project.app1',
'project.app2',...
]如果我用5个应用包这个项目,是否有办法避免在INSTALLED_APPS中安装所有的应用程序?还是选项1或2更适合这个用例?
发布于 2017-11-09 13:47:47
如果这些应用程序是非常耦合的,并且只能一起使用,IMO将它们放在不同的包中是没有意义的。因此,选项3是答案:如果它是私有的,可以通过setup.py安装到一个单独的包中,如果它是公开的,则在pip上发布。
无耻的插件:关于Django应用程序的其他建议,您可能会对我的“您的Django应用程序是用户界面”的谈话感兴趣:https://www.youtube.com/watch?v=Mnzvjn1v1CY (幻灯片这里)
https://stackoverflow.com/questions/43633723
复制相似问题