如何从数据库中提取不同的月份名称

时间:2016-12-12 14:21:23

标签: python django django-queryset

需要Django Queryset函数的帮助:

我有一个具有这种结构的模型:

class Transacao(models.Model):
    TIPO_TRANSACAO = (
        ('D', 'Debito'),
        ('C', 'Credito'),
    )
    nome = models.CharField(null=False, max_length=20)
    tipo = models.CharField(max_length=1, choices=TIPO_TRANSACAO, default='D')
    valor = models.DecimalField(max_digits=20, decimal_places=2, default=0)
    data = models.DateField(auto_now=False)

我需要在我的视图中实现一个“过滤器”功能,以便选择按月分割的所有“事务”。为此,我不想在我的视图中hardcode所有月份名称,因此我想检索每个交易的月份名称,按“日期”字段排序。

有关执行此操作的好方法的任何线索吗?

1 个答案:

答案 0 :(得分:1)

我能想到的最接近的是Django的datesdatetimes

的方法
Transacao.objects.all.datetimes('data', 'month')

[d.month for m in Transacao.objects.all().datetimes('data', 'month')]