我有一些类可以在mongoDB中访问我的集合。我为每个班级创造了很多方法。现在我想知道是否有任何方法可以实现这些方法,然后我的mongoDB类只包含字段?看看这个例子:
#mongoBase.py
class MongoBase():
def insert()
pass
def update()
pass
#user.py
class User(MongoBase):
# Here should be only fields declaration and when I call .insert(), the fields should be inserted.
我使用java反射在Java中完成了它。但是我无法在python中找到类似的东西。
答案 0 :(得分:1)
我非常确定您只需在父类中引用self
即可实现您尝试做的事情。
这是我使用的代码:
class MongoBase(object):
def insert(self, field, value):
setattr(self, field, value)
def update(self, field, value):
setattr(self, field, value)
class User(MongoBase):
def __init__(self, name):
self.name = name
以下是它的工作原理:
>>> user = User('Bob')
>>> user.name
'Bob'
>>> user.update('name', 'Rob')
>>> user.name
'Rob'
>>> user.insert('age', 12)
>>> user.age
12