python中嵌套类的Access变量

python中嵌套类的Access变量,python,mysql,nested-attributes,bottle,peewee,Python,Mysql,Nested Attributes,Bottle,Peewee,我正在使用Peewee和瓶子.py作为一个非常小的Web应用程序。偶尔我会遇到一个MySQLDatabase已经消失的错误,我的脚本似乎无法从中恢复 根据我的观点,我应该试着抓住错误并恢复自我。 我所拥有的一个例子: def create_db_con(): return peewee.MySQLDatabase("db_name", host="host", user="user", passwd="pass") class ModelObj(peewee.Model): #

我正在使用Peewee和瓶子.py作为一个非常小的Web应用程序。偶尔我会遇到一个
MySQLDatabase已经消失的错误
,我的脚本似乎无法从中恢复

根据我的观点,我应该试着抓住错误并恢复自我。 我所拥有的一个例子:

def create_db_con():
    return peewee.MySQLDatabase("db_name", host="host", user="user", passwd="pass")

class ModelObj(peewee.Model):
    #some member ommited
    class Meta:
        database=create_db_con()

@route("/")
def index_htm():
    try:
        mo = ModelObj.filter(foo="bar")
    catch OperationalError, oe:
        ModelObj.Meta.database = create_db_con()
在发生操作错误时,为我提供AttributeError:

AttributeError:type对象“OrderProdukt”没有属性“Meta”

我该如何从这种情况中恢复过来

编辑: 正如univerio所指出的,我可以通过
ModelObj.\u meta.database
访问它,但仅仅创建一个新的数据库似乎不起作用。
这是嵌套类的默认python行为吗?

查看示例,它看起来像是
Meta
类被转换为
ModelOptions
实例,可从
ModelObj获得。\u Meta
。您尝试过ModelObj的实例吗?ModelObj().Meta.database