【发布时间】:2012-02-05 03:41:27
【问题描述】:
我在 Django 模板中使用 regroup 标签来列出一些按客户分组的项目。我的模型是:
class Customer(models.Model):
name = models.CharField(max_length=25)
city = models.CharField(max_length=25)
我可以列出项目 customer.name(或 customer.city),我真正想要的是将它们订购为“名称,城市”。根据文档“任何有效的模板查找都是重组标签的合法分组属性,包括方法、属性、字典键和列表项。” [1] 如何为此定义方法?以及如何从我的模板中调用它?
[1]https://docs.djangoproject.com/en/dev/ref/templates/builtins/
更新:当我了解重组功能并且现在正在使用它时,我使用对象的一个字段对列表进行分组。分隔符 customer.grouper 显示该特定字段的名称。在我的情况下,“customer.name”或“customer.city”。我的目标是一起呈现这个,比如“customer.name, customer.city”(即“Microsoft, Redmond”)。文档简要提到了这一点,但我无法弄清楚。
def display_name(self):
return "%s, %s" (self.name, self.city)
作为我的客户模型的一部分,我尝试了上述方法来解决我的问题。但我不确定如何从我的模板中调用它。
【问题讨论】:
-
能否请您详细说明一下您到底想要什么。