Django复杂的查询和显示

时间:2014-04-23 17:25:14

标签: python django

我有一个Project模型,其中包含一些实例。我有另一个模型Progress来保持每个项目每个月的进度。这是模型:

class Progress(models.Model):
    project = models.ForeignKey(Project)
    month = models.DateField() # just use the first day to refer the month, not the key point
    value = models.IntegerField()

但是,项目可能无法同时启动。所以在我们的数据库中,我们可能有如下行:

id | project_id | month      | value
1  | 1          | 2014-01-01 | 10
2  | 1          | 2014-02-01 | 20
3  | 2          | 2014-02-01 | 15
4  | 1          | 2014-03-01 | 30
5  | 2          | 2014-03-01 | 30

我希望得到这样的输出:

         | 14-01 | 14-02 | 14-03
project1 | 10    | 20    | 30
project2 | /     | 15    | 30

对于空单元格,斜线或零都可以。我不知道如何用5行数据生成6个单元格。我应该在模板中还是在视图中实现它?


我试过模板,但由于django模板不支持break,继续循环,这可能不是一件容易的事。因此,我更喜欢使用视图来生成准备渲染的数据。

任何想法或建议都将受到赞赏。

0 个答案:

没有答案