0

我有正确显示的事件对象。但我似乎无法从 python 函数中获取结果并将其放入模板中。

例如,这是我的事件模型。

class Event(models.Model):
    created = models.DateTimeField(auto_now_add=True)
    modified = models.DateTimeField(auto_now=True)
    name = models.CharField(max_length=200)
    location = models.CharField(max_length=200)
    students = models.ManyToManyField(StudentProfile, null=True, blank=True)
    managers = models.ManyToManyField(ManagerProfile, null=True, blank=True)

    def __unicode__(self):
        return self.name

    def attendees(self):
        return len(self.students.count + self.managers.count)

我可以成功地将除与会者之外的所有内容都拉入我的模板中...例如,在搜索上下文中,我将事件作为结果传递...

{{ result.name }}很好地传递到我的模板中,{{ result.location }}.

{{ result.attendees|length }}不会显示。

知道这是为什么吗?帮助将不胜感激。

4

1 回答 1

2

您需要使用{{ result.attendees }}(否|length)。

length过滤器适用于列表和其他可迭代对象。你在那里所做的类似于 apply len(len(something)),这显然是错误的。

于 2012-10-15T17:48:21.183 回答