我有两个Django项目,我使用了很多通用模型。自定义用户类,算法类,产品类。这两个项目与电子商务有关,它们都运行在不同的机器上,并且服务于完全不同的目的。在多个项目中包含常见的Django项目
但是,考虑到他们在“常见”中有这些模型,我想知道是否值得创建第三个通用项目作为基础模型的“基础”,然后这两个项目项目会从这个基础项目导入通用模型。
这也将有所帮助,因为我们可以将这两个不同的客户和产品数据库从这两个电子商务网站加入到这个大型通用数据库中。
我的问题是: 1)有没有人有任何经验可能的开销或可以实际估计它?加入Django项目的共同部分将是必要的,但我估计在导入第三个项目(可能是实时的)时会有很多开销。
2)在第三个项目中导入最好的方法是什么?我能想到的多种方式:
- 创建打包,安装Python模块,如互联网(setuptools的,LXML,tastypie)和导入该模块到两个Django的项目,在现有的;
- 让项目坐在一台机器上的一个目录中,并在Python文件中实时导入该路径(之前做过,可以工作但似乎有一些开销);
编辑:我们的常见模型/功能,另外,包含贸易分泌和可获得的内容,因此公众分布是不可能的。我猜测路线是创建类似包的东西,但不是公开发布的,只分发和安装在2台特定的机器上。
有人可以对此提供一些反馈吗?
谢谢
这似乎是一个很好的解决方案。但是,我们在我们的共同材料中使用了商业秘密材料,因此无法公开访问。我们是否可以仅为所选机器创建和分配创建的模块? –
是的,你可以在本地设置一个私人回购站,或者你可以从egg文件本身安装,你不需要上传到pypi。 – sean