Python (烧瓶)-SQLAlchemy从柱中获取相应的模型

Python (烧瓶)-SQLAlchemy从柱中获取相应的模型,python,flask,sqlalchemy,flask-sqlalchemy,Python,Flask,Sqlalchemy,Flask Sqlalchemy,我有一个带柱的模型: class MyModel(db.Model): def my_method1(self, arg1): pass a = Column(String(), primary_key=True) 现在我有了一个函数,它接受列作为参数,从中检索一些信息: def get_column_info(column): if column.primary_key: return True else:

我有一个带柱的模型:

class MyModel(db.Model):

    def my_method1(self, arg1):
        pass

    a = Column(String(), primary_key=True)
现在我有了一个函数,它接受列作为参数,从中检索一些信息:

def get_column_info(column):
    if column.primary_key:
        return True
    else: 
        return False
请注意,这只是一个示例,get_column_info的作用远不止于实际情况

现在,我希望能够在get_column_info函数中访问原始模型。也就是说,我希望能够调用我的_method1() 从“获取信息”列中获取信息


是否有一种方法可以从列实例检索原始模型?

没有合适的现成方法来执行此操作。Column对象具有
属性,该属性返回模型的
属性,但无法从中获取实际模型。但是(正如本文所建议的),您可以使用
sqlalchemy\u utils
插件中的方法:

from sqlalchemy_utils.functions import get_class_by_table

def get_model(column):
    return get_class_by_table(db.Model, column.__table__)

没有合适的现成方法来实现这一点。Column对象具有
属性,该属性返回模型的
属性,但无法从中获取实际模型。但是(正如本文所建议的),您可以使用
sqlalchemy\u utils
插件中的方法:

from sqlalchemy_utils.functions import get_class_by_table

def get_model(column):
    return get_class_by_table(db.Model, column.__table__)

谢谢这确实是我想要的功能,我只是根据:谢谢!这确实是我想要的功能,我只是根据以下内容自己实现了这一功能: