web/application.py
branchstable
changeset 4679 d8ad65dab3e9
parent 4639 82afdc7d8cd8
child 4709 6a71fc0b4274
equal deleted inserted replaced
4678:45661175f1da 4679:d8ad65dab3e9
   379             forminfo = {'error': ex,
   379             forminfo = {'error': ex,
   380                         'values': req.form,
   380                         'values': req.form,
   381                         'eidmap': req.data.get('eidmap', {})
   381                         'eidmap': req.data.get('eidmap', {})
   382                         }
   382                         }
   383             req.set_session_data(req.form['__errorurl'], forminfo)
   383             req.set_session_data(req.form['__errorurl'], forminfo)
   384             raise Redirect(req.form['__errorurl'])
   384             # XXX form session key / __error_url should be differentiated:
       
   385             # session key is 'url + #<form dom id', though we usually don't want
       
   386             # the browser to move to the form since it hides the global
       
   387             # messages.
       
   388             raise Redirect(req.form['__errorurl'].rsplit('#', 1)[0])
   385         self.error_handler(req, ex, tb=False)
   389         self.error_handler(req, ex, tb=False)
   386 
   390 
   387     def error_handler(self, req, ex, tb=False):
   391     def error_handler(self, req, ex, tb=False):
   388         excinfo = sys.exc_info()
   392         excinfo = sys.exc_info()
   389         self.exception(repr(ex))
   393         self.exception(repr(ex))