Наследование модели Django и проверка типа

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, но я также хочу знать, что это - Автомобильная подмодель.

11
задан Hellnar 9 August 2010 в 07:16
поделиться

1 ответ

Я не уверен, правильно ли понимаю ваш вопрос. Если вы пытаетесь узнать тип данного экземпляра, вы можете использовать встроенную функцию 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
20
ответ дан 3 December 2019 в 04:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: