У меня есть модель с именем Animal
, и есть несколько моделей, которые имеют Animal
как OneToOneField
class Animal(models.Model):
name = models.CharField(max_length=20)
description = models.TextField()
class Cat(models.Model):
animal = models.OneToOneField(Animal, on_delete=models.CASCADE)
name = models.CharField(max_length=20)
class Dog(models.Model):
animal = models.OneToOneField(Animal, on_delete=models.CASCADE)
name = models.CharField(max_length=20)
class Lion(models.Model):
animal = models.OneToOneField(Animal, on_delete=models.CASCADE)
name = models.CharField(max_length=20)
(примечание: имеется 50 подмоделей) Только при создании объявления, поэтому он будет связан только с одним из 50 автомобилей, лодок или грузовиков субмодели, поэтому после этого я создаю представление для отображения имени животного, но как узнать, какая субмодель связана с объявлением, чтобы получить от него данные? .
def get_ad_details(request, id):
animal = Animal.objects.get(id=id)
#need to call a method to get a boat or car or truck or .... that is associated to the ad so how?