1

我在单元测试模式下执行 Flask 应用程序时遇到问题。由于某种原因,同一个模块被导入了两次(当我将它作为开发服务器运行时,在烧瓶应用程序中似乎不是问题)。结构是这样的:

  -- app
    |
    --blueprint
       |-- __init__.py : import foo; from .bar import aaa
       |-- foo.py : # some sqlalchemy model setup, etc
       |
       |-- bar
       |    | -- __init__.py : from bar import bbb
            | -- bar.py : from app.foo import ccc

问题在于bar.py使用函数foo.py:ccc两次运行 sqlalchemy 模型定义(由于元数据已经注册了模型而失败)。如何避免这种冲突?如果我运行烧瓶应用程序而不是作为单元测试,我也很惊讶为什么不会发生这种情况。

4

0 回答 0