我想为用户创建一个模型类。用户的数据存储在基于文档的数据库中,如 couchdb 或 mongodb。User 类应该有一个装饰器,并且 db 中的字段可以通过不存在的类属性访问。例如
@DocumentDB()
class User(object):
def doSomething(self):
pass
def doSomethingElse(self):
pass
u = User('thisIsAUniqUserId')
print u.emailAddress
print u.lastName
我玩过 python 装饰器。操作现有函数并不是一件大事,但我如何才能捕捉到对不存在的 getter/setter 的调用,以通过对象实例创建对 db 值的透明访问?