Django:对模板中的重组感到困惑

时间:2014-02-23 19:47:49

标签: django

我有这样的模特购买:

class Purchase(models.Model):
   material = models.ForeignKey(Material)
   supplier = models.ForeignKey(Supplier)
   amount = models.IntegerField()
   price = models.FloatField()
   state = models.IntegerField(default=0)
   timestamp = models.DateTimeField(auto_now=True)

在模板中,我想按供应商对所有购买进行分组,所以我写了<% regroup purchases by supplier as supplier_list %>,然而,让我感到困惑的是:我在数据库中只有两个供应商,但在这里有三个供应商,其中两个是同一个供应商。

测试案例:

purchase_purchase表

id |  material_id | supplier_id | amount

1  |  3           | 3           | 2
2  |  4           | 3           | 10
3  |  3           | 2           | 10
4  |  3           | 3           | 4

我的代码段是否有任何错误?等待建议。

1 个答案:

答案 0 :(得分:2)

您需要确保您的数据已按您要重新组合的值进行排序。

regroup标记的documentation确实解释了这一点:

  

请注意{% regroup %}没有命令输入!我们的例子依赖于城市名单首先按国家排序的事实。如果城市列表没有按国家/地区对其成员进行排序,则重新组合将天真地为单个国家/地区显示多个组。