2009-05-23 58 views
1

當我去http://localhost:8080/_ah/admin/cron,在谷歌的文檔說,我得到如下:爲什麼我無法查看我的Google App Engine cron管理頁面?

Traceback (most recent call last): 
File "C:\Program Files\Google\google_appengine\google\appengine\ext\webapp\__init__.py", line 501, in __call__ 
handler.get(*groups) 
File "C:\Program Files\Google\google_appengine\google\appengine\ext\admin\__init__.py", line 239, in get 
schedule = groctimespecification.GrocTimeSpecification(entry.schedule) 
File "C:\Program Files\Google\google_appengine\google\appengine\cron\groctimespecification.py", line 71, in GrocTimeSpecification 
parser.period_string) 
File "C:\Program Files\Google\google_appengine\google\appengine\cron\groctimespecification.py", line 122, in __init__ 
super(IntervalTimeSpecification, self).__init__(self) 
TypeError: object.__init__() takes no parameters 

我有最新的SDK,它看起來像我的配置文件是正確的。

回答

3

恭喜!你發現了一個錯誤。您能否在public issue tracker上提交錯誤?如果您想立即爲自己修復它,請刪除該堆棧跟蹤結尾處引用的行中的'self'參數。

+0

你試過嗎?它不適用於我,我認爲這是因爲我使用2.6,我現在正在下載2.5.4,以查看是否可以修復它。 – MStodd 2009-05-24 00:17:05

4

這絕對是Google App Engine中的一個錯誤。如果您檢查groctimespecification.py,您會看到IntervalTimeSpecification繼承自TimeSpecification,而後者繼而直接從object繼承,並且不覆蓋其方法__init__

所以IntervalTimeSpecification__init__是不正確的:

class IntervalTimeSpecification(TimeSpecification): 
    def __init__(self, interval, period): 
    super(IntervalTimeSpecification, self).__init__(self) 

我的猜測是,有人轉化老式的父類的init電話:

TimeSpecification.__init__(self) 

當前的一個,卻忘了與隱含地傳遞super,self。正確的行應該看起來像這樣:

super(IntervalTimeSpecification, self).__init__() 
相關問題