Python Flask大型应用程序-从utils文件导入函数
我需要帮助从我的Flask应用程序中的utils文件导入功能Python Flask大型应用程序-从utils文件导入函数,python,flask,Python,Flask,我需要帮助从我的Flask应用程序中的utils文件导入功能 # Structure of my app: **(updated)** apps -[admin] --forms_admin.py --views_admin.py --models_admin.py -[user] --forms_user.py --views_user.py --models_user.py -[dashboard] -__init__.py (empty) ... ... -utils.py util
# Structure of my app:
**(updated)**
apps
-[admin]
--forms_admin.py
--views_admin.py
--models_admin.py
-[user]
--forms_user.py
--views_user.py
--models_user.py
-[dashboard]
-__init__.py (empty)
...
...
-utils.py
utils文件
# utils.py
def select_role()
...
return roles_list
def required_roles(*roles):
def decorator(f):
@wraps(f)
def decorated_function(*args, **kwargs):
if not str(current_user.role_id) in roles:
abort(403)
return f(*args, **kwargs)
return decorated_function
return decorator
我需要导入函数def select_role from forms_user.py
但当我尝试时:
# forms_user.py
from apps.utils import select_role
在终端外壳中出现错误:ImportError:无法导入名称“选择\角色”
有人知道我做错了什么吗
从utils文件导入函数的最佳实践是什么
谢谢你的回答。首先,确保你的apps目录中有一个u_init___;.py文件,即使是空的,这也会告诉python app是一个模块,你可以从中导入 在表单_user.py中,可以进行相对导入
from utils import select_role
你的应用程序有init.pyhm吗?是的,我有init.py,但只是一个空文件,就像在Flask Cookiecutter中一样。我在应用程序文件夹中有init.py,我在我的问题中更新了结构。当我尝试导入时,在终端中仍然出现错误:from..utils import select_district,select_role:/And第二信息:在表单中_user.py具有“import from apps.user.models_user import user”,角色“并且此导入工作可能正常”位于第一行,shell仅在有问题的导入时终止这是一个特定的问题,因为在文件开头的utils中,我有“从apps.admin.models\u admin import PromoProduct”导入。如果我删除此导入,所有操作都正常。谢谢你的努力。