[DB-SIG] Unifying exceptions (was: db module wrapper)
Ian Bicking
ianb at colorstudy.com
Sat Aug 21 00:01:06 CEST 2004
There might be a clever/tricky solution that would be a little easier to
implement and more reliable.
Hmm... you could try changing the exceptions, like:
import psycopg
psycopg.DatabaseError = MyDatabaseError
I don't know if this will always stick, or if it's always mutable in
this way. Another way might be:
class MyDatabaseError(Exception):
pass
psycopg.DatabaseError.__bases__ = (MyDatabaseError,)
Then you can catch MyDatabaseError, and it will catch
psycopg.DatabaseError (since it's a subclass). This might be more
likely to stick, and work better with the C modules. (Maybe, I don't
know...?)
--
Ian Bicking / ianb at colorstudy.com / http://blog.ianbicking.org
More information about the DB-SIG
mailing list