如何在Django中克隆/变异一个模型而不需要子类化

2024-06-26 18:00:51 发布

您现在位置:Python中文网/ 问答频道 /正文

“埃洛,大家。我试图在Django中创建一个基于另一个模型的模型,但不是子类化或与其他模型有数据库关系。我的原始模型看起来像这样:它存储一些带有日期/时间戳的数据。在

class Entry(Model):  
    data1 = FloatField()  
    data2 = FloatField()  
    entered = DateTimeField()  

我还想使用一个几乎完全相同的模型,每天汇总这些条目的数字数据。对于DailyAvg()变量,我们将使用DateField()而不是DateTimeField(),因为每天只有一个平均值:

^{pr2}$

因此,问题是:将会有很多这样的数据类需要在数据库中存储一个相应的日均模型,并且定义几乎是相同的。我可以为每个数据类重新键入一个等效的DailyAvg()类的定义,但这似乎违反了DRY,而且也是一个巨大的麻烦。我也不能有EntryDailyAvg子类条目,因为每次我保存一个新的EntryDailyAvg时,Django都会保存一个新的条目基。在

有没有一种方法可以自动(神奇地?)生成DailyAvg()类?在

提前谢谢!在


Tags: 数据django模型数据库model定义关系时间
1条回答
网友
1楼 · 发布于 2024-06-26 18:00:51

如果创建一个包含所有data1内容的AbstractEntry类,然后创建两个子类:Entry和EntryDailyAvg。在

查看文档,了解如何告诉django一个类是抽象的。在

相关问题 更多 >