Python sqlalchemy两次声明相同的模型

Python sqlalchemy两次声明相同的模型,python,sqlalchemy,flask-sqlalchemy,Python,Sqlalchemy,Flask Sqlalchemy,我正在一个烧瓶项目中使用sqlalchemy。我需要使用我已经在项目的不同模块中声明的模型。再次声明该模型是否有任何影响,或者是从模块导入该模型的最佳选项?如果该模型已存在于数据库中,为什么需要声明该模型?Sqlalchemy允许您从数据库中读取元数据,并将其用作表 metadata = db.MetaData(bind=engine) your_table = db.Table('your_table', metadata, autoload=True) 通常我会说,导入模型。将创建一个全局

我正在一个烧瓶项目中使用sqlalchemy。我需要使用我已经在项目的不同模块中声明的模型。再次声明该模型是否有任何影响,或者是从模块导入该模型的最佳选项?

如果该模型已存在于数据库中,为什么需要声明该模型?Sqlalchemy允许您从数据库中读取元数据,并将其用作表

metadata = db.MetaData(bind=engine)
your_table = db.Table('your_table', metadata, autoload=True)

通常我会说,导入模型。将创建一个全局模型模块,使我认为我将在整个项目上使用的所有模型更容易实现这一点,而不显示代码和您当前的工作方式。很难对讨论作出响应并增加价值。我不知道这一点,但它似乎解决了我的问题。我正在为存在常见“错误”的表创建模型。我不会假装明确声明您的模型没有任何优势——但是对于遗留数据库,通常只从数据库中获取模型就可以了。如果开发人员仍在更改数据库中的表,并且无法要求“您的代码”(模型)保持最新,那么这也很有用。有意义的话,这将使工作更轻松