2

我想在我的 Django 模板中遍历泛型关系,类似于如何遍历 FK 关系。

模型.py

class Company(models.Model):
    name = models.CharField(blank=True, max_length=100)
    notes = models.TextField(blank=True)

class Address(models.Model):
    address = models.TextField(max_length=200)
    content_type = models.ForeignKey(ContentType)
    object_id = models.PositiveIntegerField()
    content_object = generic.GenericForeignKey('content_type', 'object_id')

这在我的模板中似乎不起作用:

{{ company.address_set.all }}

任何帮助表示赞赏。

4

1 回答 1

7

您的公司模型不知道地址,您可以试试这个:

class Company(models.Model):
    name = models.CharField(blank=True, max_length=100)
    notes = models.TextField(blank=True)
    addresses = generic.GenericRelation('Address', blank = True)

在您的模板中,您可以执行以下操作:

{% for address in company.addresses.all %}
{{ address.town }}, {{ address.street }}
{% endfor %}

希望这可以帮助。

于 2012-02-16T16:50:06.037 回答