我有一个像这样的超级类:
class Superclass(models.Model):
number = models.PositiveIntegerField()
class Meta:
abstract = True
def get_next(self):
return Superclass.objects.get(number=self.number+1)
现在,我有一个继承自超类的子类。
有什么问题?
- 我不能这样做:
Superclass.objects
因为超类不引用任何数据库表。 - 我不想查询所有超类子类,只查询当前子类中的一个,如下所示:当我这样做时,
instance_of_child1.get_next
我不想获取Child2
.
如何解决这个问题?
- 我的第一个想法是向包含该类的任何子类添加一个静态常量(所以我可以这样做
self.myclass.objects
)但这似乎不是一个好方法。 - 使该方法
get_next
成为子类的一部分。问题:会有重复。