Django 继承经理。如何从继承模型中获取字段?
观点:Django 继承经理。如何从继承模型中获取字段?,django,Django,观点: from model_utils.managers import InheritanceManager class Property(models.Model): title = models.CharField(max_length=255) slug = models.SlugField() desc = models.TextField() objects = InheritanceManager() class Apartament(Prope
from model_utils.managers import InheritanceManager
class Property(models.Model):
title = models.CharField(max_length=255)
slug = models.SlugField()
desc = models.TextField()
objects = InheritanceManager()
class Apartament(Property):
bedrooms = models.IntegerField()
levels = models.IntegerField()
something = models.CharField(max_length=255)
模板:
p = Property.objects.get(slug=slug)
return render_to_response(...{'p':p} ...)
我可以从公寓
访问这些字段吗?
例如:
{{ p.title }}
如何在我的模板中获取卧室?您调用的
属性.objects.get
方法是vanilla models.Manager方法,它只为您提供一个属性
对象。您需要使用InheritanceManager
提供的get\u子类
方法来获取派生类的实例:
{{ p.bedrooms }}
p = Property.objects.get_subclass(slug=slug)