有多个Flaskapp的结构模型.py

2024-04-20 05:28:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前有一个Flask应用程序,其结构如下:

deploy/
api/
  customer/
    models.py
  contact/
    models.py
  campaign/
    models.py
  activity/
    models.py
  __init__.py
  database.py
tests/
  test_api.py

因为我有太多的模型,我把它们分割成单独的文件,这在我尝试初始化我的数据库时给我带来了问题。在

在我的每一个模型中,我执行以下操作以使Flask SQLAlchemy的模型调用可用:

^{pr2}$

这样做意味着每个模型都有一个不同的db对象,这使得无法正确初始化我的应用程序。在

如何构造我的项目,使我可以有一个db对象,该对象被我的所有模型、测试和__init__.py中的create_app()函数使用?在


Tags: 对象py模型api应用程序flaskdbinit
1条回答
网友
1楼 · 发布于 2024-04-20 05:28:08

有一种方法:

  myapp/
    __init__.py
    database.py
    app.py
    model1/
      __init__.py
      models.py
    model2/
      __init__.py
      models.py

在数据库.py公司名称:

^{pr2}$

在各种各样的模型.py文件:

from ..database import db

class User(db.Model):
    ...

这使用了explicit relative imports

相关问题 更多 >