2012-06-11 69 views
1

在Django中,我有一個包含日期列的SQL表。該字段是DATE。Django日期列表

在views.py文件中,我想從這些日期中獲得年份列表。我已經嘗試過以下運氣:

from mysite.WeatherData.models import WeatherData 

time_list =[] 
raw_time_list = WeatherData.objects.all() 

for onedatum in raw_time_list: 
    time_list += onedatum.time_stamp.isocalendar()[0] 

WeatherData中的列稱爲time_stamp,它包含Date數據。

我得到的錯誤是:
'int'對象不可用。

我已經用WeatherData.objects.filter(location = LocationCode)完成了這一年的幾周,它工作正常,所以我不知道爲什麼現在不工作。

回答

3

由於無法將整數附加到列表中,您會收到該錯誤。
這裏是爲了重現錯誤示例:

>>> l = [] 
>>> l += 1 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'int' object is not iterable 
>>> l.append(1) # but we can use the .append() method instead 
>>> l 
[1] 

應用到你的代碼:

for onedatum in raw_time_list: 
    time_list.append(onedatum.time_stamp.isocalendar()[0]) 
+0

謝謝......完全忘記了這樣做......總腦凍...我猜我只是假設QuerySet有一些問題 –

+0

嘿,它發生在我們所有人身上。將它抖掉並在下一期發行。不用謝。 – bernie