[英]Attempting to import a variable from parent module breaks other imports
我知道這個問題可能會一遍又一遍地問,並且在理解import
如何與Python結合使用方面已經走了很長一段路。 在詢問之前,我做了我想盡一切可能的嘗試,但是我完全迷失了執行簡單的import
感覺。
我需要訪問子模塊(user.py)中的app
變量,以專門使用app.config
。 我的結構如下:
src
| - __init__.py
| - app.py
| - models
| - __init__.py
| - user.py
我的app.py
文件如下所示:
from flask import Flask, make_response, abort, jsonify, g
from flask_restful import Api
from flask_login import LoginManager, current_user
from models import db
from apis.v1.tasks import TaskAPI, TaskListAPI
from apis.v1.users import UserAPI, UserListAPI
from apis.v1 import auth
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:root@localhost/database"
app.config['SECRET_KEY'] = "loremIpsumDolorSitAmet"
# More code n stuff
我想動手使用app
以便可以在我的models/user.py
模塊中引用app.config['SECRET_KEY']
。
所以我嘗試了一切 (從models/user.py
)。
from src import app
from src.app import app
from .. import app
大多數情況下,我會收到類似於ImportError: No module named src.app
,但是有時我會收到類似ImportError: cannot import name User
坦率地使我感到困惑的ImportError: cannot import name User
,因為這幾乎就像導入成功但引起某種后果循環?
我真的希望這份導入指南能夠為我提供所需的信息,雖然它對我的孩子/兄弟姐妹導入以及對模塊/包裝/等的了解對我有很大幫助,但它並沒有幫助我最新一期。
任何幫助將不勝感激。
編輯:好的,所以我要解決這個問題是我創建了一個單獨的config/
包,所以現在文件夾結構是,
src
| - __init__.py
| - app.py
| - config
| - __init__.py
| - models
| - __init__.py
| - user.py
在app.py
我通過app.config.from_object('config')
訪問它,在user.py
我from config import SECRET_KEY
調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.