django模型可以处理“类级”属性吗?

时间:2017-06-28 11:33:33

标签: django inheritance django-models

我正在寻找构建一个django应用程序,它以某种方式处理“类级”属性(通过抽象类?),如果没有明确定义项目特定的等效值,它们可以继承。

这是可以在Django模型中实现的吗?这显然是一个混乱的黑客,但我认为我可以“硬编码”项目类中的角色率,并在两者之间使用max()

models.py

class Project(models.Model):
    name=models.CharField(max_length=30)
    rate_role1=100
    rate_role2=120

class hourly_rates(models.Model):
    project=models.OneToOneField(
        Project,
        on_delete=models.CASCADE,
        primary_key=True,
    )
    role= models.CharField(max_length=20)
    rate= models.DecimalField(max_digits=8, decimal_places=2)

总之,我想要实现的功能是:

创建新的project实例时,每小时费率变量是可选的。如果没有提供,那么当使用小时费率值来计算成本时,他们会参考“全球”小时费率。相反,如果新项目定义了小时费率(或某些小时费率),那么这些费用应优先用于全球费率。

0 个答案:

没有答案