diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-02-21 02:57:38 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-02-21 02:57:38 +0000 |
commit | a2ff73200cd6bfa465d13b8531c2745007ebf8c9 (patch) | |
tree | 123a5291900bbb8656fbcb17c44678740523d28d /lib/sqlalchemy/mapping/mapper.py | |
parent | bec1b4f92ea23e41eebe90d184acff9c2918b175 (diff) | |
download | sqlalchemy-a2ff73200cd6bfa465d13b8531c2745007ebf8c9.tar.gz |
working on postupdate idea, refactoring to dependency processing
Diffstat (limited to 'lib/sqlalchemy/mapping/mapper.py')
-rw-r--r-- | lib/sqlalchemy/mapping/mapper.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/sqlalchemy/mapping/mapper.py b/lib/sqlalchemy/mapping/mapper.py index 88b803b37..2e69a1e66 100644 --- a/lib/sqlalchemy/mapping/mapper.py +++ b/lib/sqlalchemy/mapping/mapper.py @@ -893,6 +893,22 @@ def hash_key(obj): return obj.hash_key() else: return repr(obj) + +def object_mapper(object): + """given an object, returns the primary Mapper associated with the object + or the object's class.""" + return class_mapper(object.__class__) + +def class_mapper(class_): + """given a class, returns the primary Mapper associated with the class.""" + return mapper_registry[class_] + try: + return mapper_registry[class_] + except KeyError: + pass + except AttributeError: + pass + raise InvalidRequestError("Class '%s' has no mapper associated with it" % class_.__name__) |