这可能是一个奇怪的问题,从标题中可能并不明显,但无法找到更好/更具描述性的标题。
我有一个库存控制应用程序,拥有自己的模型,信号,管理员和表单。我需要为多家公司复制这个应用程序,以下是我目前正在做的事情:
app_shared
models
products
adressbook
forms
signals
admin
app_company1
models
inventory
transactions
...
forms
signals
admin
app_company2
models
inventory
transactions
...
forms
signals
admin
问题是,在app_company1和app_company2之间,一切都是相同的,相同的模型,信号等等。我必须将它们分开以在数据库中创建自己的表。但是不想复制相同的代码。有没有办法防止重复?
答案 0 :(得分:1)
您应该将所有相同的代码移至app_shared
应用程序,然后从app_company1
和app_company2
导入。
如果要求数据库中有单独的表,则inventory
和transaction
模型应在app_shared
中定义为抽象。 app_company1
和app_company2
应该创建自己的相应模型,这些模型派生自抽象模型。这将确保在DB中生成单独的表。有关详细信息,请参阅this文档页面。
答案 1 :(得分:0)
问题是,在app_company1和app_company2之间,一切都是相同的,相同的模型,信号等等。我必须将它们分开以在数据库中创建自己的表。但是不想复制相同的代码。有没有办法防止重复?
如果您有这样的代码,那么您的应用程序设计并不完美。您可以尝试为app_company
制作一个应用,并尝试区分不同公司的记录。这样,您可以根据需要添加任意数量的公司,而无需复制代码或为每个公司添加新的应用程序。