Django 模型继承到多个应用程序
Django Model Inheritance to multiple apps
class People(models.Model):
# Utility Fields - auto fill
# Timestamp
# Base Fields
# Methods, e.g save, get_absolute_url
class Meta:
abstract = True
- App客户端:继承自People模型+自己的Fields
- App供应商:继承People模型+自己的Fields
问题
- 问题 1:我应该将 People 模型的代码放在哪里,因为我想将它用于 2 个以上的应用程序?
- Q2:这种做法可以接受吗?
- Q3:在生产环境下能高效运行吗?
问题 1:我应该将 People 模型的代码放在哪里,因为我想将它用于 2 个以上的应用程序?
只需为抽象模型创建第三个应用程序。还好。
Q2:这种做法可以接受吗?
是的。 abstract = True
就是为了这个。
Q3:在生产环境下能高效运行吗?
是的,另外,abstract = True
不会创建新的数据库表或关系,只是代码。
class People(models.Model):
# Utility Fields - auto fill
# Timestamp
# Base Fields
# Methods, e.g save, get_absolute_url
class Meta:
abstract = True
- App客户端:继承自People模型+自己的Fields
- App供应商:继承People模型+自己的Fields
问题
- 问题 1:我应该将 People 模型的代码放在哪里,因为我想将它用于 2 个以上的应用程序?
- Q2:这种做法可以接受吗?
- Q3:在生产环境下能高效运行吗?
问题 1:我应该将 People 模型的代码放在哪里,因为我想将它用于 2 个以上的应用程序?
只需为抽象模型创建第三个应用程序。还好。
Q2:这种做法可以接受吗?
是的。 abstract = True
就是为了这个。
Q3:在生产环境下能高效运行吗?
是的,另外,abstract = True
不会创建新的数据库表或关系,只是代码。