Я использую Google App Engine с Python и сталкивается с ошибками, как это:Google App Engine (Python SDK) - Как перехватывать исключения DB
raise BadValueError('Property %s is not multi-line' % self.name)
BadValueError: Property title is not multi-line
ERROR 2014-09-20 16:01:23,969 wsgi.py:278]
Traceback (most recent call last):
Я импортированные модуль DB: from google.appengine.ext import db
И я пытаюсь тихо (на данный момент) поймать ошибку с кодом, как это:
try:
r.put()
except db.Error:
pass
Но ошибка продолжает нарушать выполнение программы. Что я делаю не так? (? Или не делать)
Благодаря ...
Вот полный отслеживающий:
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 1511, in __call__
rv = self.handle_exception(request, response, e)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 1505, in __call__
rv = self.router.dispatch(request, response)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 1253, in default_dispatcher
return route.handler_adapter(request, response)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 1077, in __call__
return handler.dispatch()
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 547, in dispatch
return self.handle_exception(e, self.app.debug)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.3/webapp2.py", line 545, in dispatch
return method(*args, **kwargs)
File "/Users/me/myapp/myapp.py", line 191, in get
date_last_modified = date_last_modified)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", line 970, in __init__
prop.__set__(self, value)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", line 614, in __set__
value = self.validate(value)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", line 2847, in validate
raise BadValueError('Property %s is not multi-line' % self.name)
BadValueError: Property column_series is not multi-line
Ну, для начала вы поймаете неправильное исключение. Исключением является «BadValueError». –
@BurhanKhalid: 'db.BadValueError' является подклассом' db.Error'. –
У вас есть правильное исключение; но вы ловите его в нужном месте *? Пожалуйста, покажите нам полную трассу. –