我有一个函数,get_priority()
它对父类(块)中的所有对象进行排序,以获得最高的“优先级”对象。现在我想将相关的子类对象获取到超类对象。
Multi-Table Inheritance 上的Django 文档表明我可以通过使用子类的小写名称来做到这一点。例如,如果子类是 Concept,我可以执行以下操作:
chunk = get_priority(Chunk.objects.all())
chunk.concept
但是,子类可以是概念、代码、公式或问题。是对每个子类使用 try/except 的唯一方法,例如:
chunk = get_priority(Chunk.objects.all())
try:
object = chunk.concept
except:
pass
try:
object = chunk.code
except:
pass
# etc.