3
在Django Admin我想顯示所有操作持續時間的總和。我解決了它額外的領域。但Django管理員額外字段總和()TimeField
01:30:00^h 3時45分00秒^ h
的總和,因爲總和轉換倍整數相加,47500,0。
我改變了我的admin.py喜歡這裏描述: django-admin: Add extra row with totals
class MyChangeList(ChangeList):
def get_results(self, *args, **kwargs):
super(MyChangeList, self).get_results(*args, **kwargs)
q = self.result_list.aggregate(status_sum=Sum('duration'))
self.status_count = q['action_sum']
...
class ActionAdmin(admin.ModelAdmin):
def get_changelist(self, request):
return MyChangeList
class Meta:
model = Status
list_display = ('name', 'duration')
時間是defienes如TimeField在modles.py:
class Action (models.Model):
duration = models.TimeField()
有人知道如何更改彙總()函數MyChangeList? 我想我必須將時間值更改爲浮點或整數,然後將其轉換回來。
有什麼建議嗎?
非常感謝。
我正在使用Mysql。我認爲這是你提到的mysql的錯誤。 非常感謝,我安裝了** django-durationfield **,並將MyChangeList中的最後兩行更改爲:
class MyChangeList(ChangeList): ... q = self.result_list.aggregate(status_sum=Sum('duration')) self.status_count = timedelta(microseconds=q['action_sum'])
現在它工作;-) – surfi 2012-01-16 12:36:32