0
當我的腳本調用Babel函數時,我收到了從Python Babel包中拋出的這個異常。事情是,當我從命令行運行它的作品沒關係。但是,這是我從cron運行時得到的錯誤。看起來它可能與某些環境或區域設置有關或缺乏它。Python:當從cron調用時,爲什麼從Babel中獲得這個異常?
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 508, in format_datetime
return parse_pattern(format).apply(datetime, locale)
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 702, in apply
return self % DateTimeFormat(datetime, locale)
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 699, in __mod__
return self.format % other
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 724, in __getitem__
return self.format_month(char, num)
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 793, in format_month
return get_month_names(width, context, self.locale)[self.value.month]
File "/home/myproj/lib/python2.6/Babel-0.9.5-py2.6.egg/babel/dates.py", line 87, in get_month_names
return Locale.parse(locale).months[context][width]
AttributeError: 'NoneType' object has no attribute 'months'
UPDATE
當從命令行區域稱爲是en_US和從cron無調用時。如何從cron調用它時設置它?
此外,不知道這是否重要,但調用Babel的腳本是一個自定義的django-admin命令。
似乎喜歡它。你可以在引發異常的地方附近放置一個「打印語言環境」,並將它作爲你自己和cron運行時打印出本地值? – 2011-01-29 17:11:36