0
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 }}

からフィールドにアクセスできますApartamentか? 例えば:

{{ p.bedrooms }}

テンプレートで寝室を取得する方法は?

4

1 に答える 1

0

呼び出しているProperty.objects.getメソッドは、オブジェクトを提供するバニラの models.Manager ですProperty。派生クラスのインスタンスを取得するには、get_subclassによって提供されるメソッドを使用する必要があります。InheritanceManager

p = Property.objects.get_subclass(slug=slug)
于 2013-02-25T16:20:01.423 に答える