diff options
author | Marko Kreen | 2008-04-03 09:11:14 +0000 |
---|---|---|
committer | Marko Kreen | 2008-04-03 09:11:14 +0000 |
commit | 371752cca75c8d502c78b6544da251bd3f484672 (patch) | |
tree | 2ace359913191a5d9f4160f864feaef0c1465ad3 /python/skytools/psycopgwrapper.py | |
parent | 40c21125dec7939c3d2a4b3e9ad5d8aef4eff15d (diff) |
simplify psycopgwrapper:
- remove QuotedString, its unused now
- drop the ugly __setitem__ implementation
- drop __setattr__, __delattr_
row is supposed to be r/o
Diffstat (limited to 'python/skytools/psycopgwrapper.py')
-rw-r--r-- | python/skytools/psycopgwrapper.py | 30 |
1 files changed, 1 insertions, 29 deletions
diff --git a/python/skytools/psycopgwrapper.py b/python/skytools/psycopgwrapper.py index ef4fe94e..4ba80a4d 100644 --- a/python/skytools/psycopgwrapper.py +++ b/python/skytools/psycopgwrapper.py @@ -20,29 +20,12 @@ try: # only backwards compat thing we need is dict* methods import psycopg2.extensions, psycopg2.extras - from psycopg2.extensions import QuotedString from sqltools import dbdict class _CompatRow(psycopg2.extras.DictRow): """Make DictRow more dict-like.""" __slots__ = ('_index',) - def __setitem__(self, k, v): - """Allow adding new key-value pairs. - - Such operation adds new field to global _index. - But that is OK, as .description is unchanged, and access - to such fields before setting them should raise exception - anyway. - """ - if type(k) != int: - if k not in self._index: - self._index[k] = len(self._index) - k = self._index[k] - while k >= len(self): - self.append(None) - return list.__setitem__(self, k, v) - def __contains__(self, k): """Returns if such row has such column.""" return k in self._index @@ -59,17 +42,7 @@ try: # obj.foo access def __getattr__(self, k): - try: - return psycopg2.extras.DictRow.__getattr__(self, k) - except AttributeError: - return self[k] - def __setattr__(self, k, v): - if k == "_index": - return psycopg2.extras.DictRow.__setattr__(self, k, v) - else: - self[k] = v - def __delattr__(self, k): - raise Exception("del not supported for DictRow") + return self[k] class _CompatCursor(psycopg2.extras.DictCursor): """Regular psycopg2 DictCursor with dict* methods.""" @@ -93,7 +66,6 @@ except ImportError: # use psycopg 1 try: from psycopg import connect as _pgconnect - from psycopg import QuotedString except ImportError: print "Please install psycopg2 module" sys.exit(1) |