Apakah Anda mencoba melihat skema Anda? Saya rasa Anda salah memasukkan nama kolom.
Dengan asumsi Anda menggunakan Djnago>=1.8, Anda juga dapat menghindari seluruh masalah dengan menulis Func
seperti ini:
class ExtractMonth(Func):
template = "EXTRACT(MONTH FROM %(expressions)s)"
def __init__(self, *expressions, **extra):
extra['output_field'] = SmallIntegerField()
super().__init__(*expressions, **extra)
dan menggunakannya seperti ini:
Subscription.objects.annotate(Month=ExtractMonth('Modified'))\
.values('Month').annotate(Count('Month'))
Dengan cara ini 'Modified'
adalah nama bidang pada model Anda dan Django menyelesaikan nama kolom untuk Anda.
Perbarui
Ada solusi yang lebih umum yang diusulkan dalam tiket 1.9 ini .