Flask:从子文件夹中获取应用程序

时间:2016-11-07 12:31:37

标签: python import

我有这样的层次结构

Project/
|-- app/
|-- folder1/
|   |-- code1.py
|   |-- __init__.py
|-- __init__.py

我正在尝试从code1.py到达我的" app" Flask变量定义如 app =位于app文件夹中的__name__中的Flask(__init__.py

我似乎无法导入我的app变量,我尝试了以下内容 -

from Project.app import app
from .. import app
from ..app import app
from ...app import app

当我尝试Project.app import app时,我得到import issues trying to import code1(其中包含我在__init__.py注册的蓝图,其中定义了应用。

1 个答案:

答案 0 :(得分:2)

让我们假设您的代码在Project文件夹中运行。这意味着当前模块目录是“Project”。这意味着您可以访问所有子文件夹,只要它们被视为模块(具有__init__.py文件)。

Project/
|-- run.py <
|-- app/
|-- folder1/
|   |-- code1.py
|   |-- __init__.py
|-- __init__.py

在run.py中,以下所有内容均有效

import folder1
import .
from folder1 import code1
from folder1.code1 import <submodule>

如果您的应用位于folder1 / __ init __。py

from folder1 import app