class Machine(models.Model):
name= models.CharField( max_length=120)
class Meta:
abstract = True
class Car(Machine):
speed = models.IntegerField()
class Computer(Machine)
ram = models.IntegerField()
我的问题是,我如何理解 Machine 模型是什么类型。例如,我知道传入查询是 Machine 模型的子模型,但我也想知道它是 Car 子模型。
最佳答案
我不确定我是否正确理解了你的问题。 如果您正在尝试找出给定实例的类型,您可以使用内置的type
函数。
an_object = Car(name = "foo", speed = 80)
an_object.save()
type(an_object) # <class 'project.app.models.Car'>
或者,如果您想检查 an_object
是否是 Car
的实例,您可以使用 isinstance
。
isinstance(an_object, Car) # True
关于python - Django 模型继承和类型检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3438003/