をインポートすることはできません私はアップロードファイルにフラスコ-曇りを使用しようとするが、私はストレージ(フラスコ-曇りでモデル)をインポートすることはできません これは私がそれをconfigの方法です:フラスコはImportError:名記憶
class DevelopmentConfig():
DEBUG = True
SECRET_KEY = 'I_will_never_told_you'
STORAGE_PROVIDER = "LOCAL"
STORAGE_CONTAINER = "./data"
STORAGE_KEY = ""
STORAGE_SECRET = ""
STORAGE_SERVER = True
と私はアプリ/ のinitの.pyでそれを初期化:私は
を試してみました :from flask import Flask, redirect, request, url_for, g
from .main import main as main_blueprint
from .auth import auth as auth_blueprint
from config import DevelopmentConfig
from flask_login import LoginManager
from flask_cloudy import Storage #import Storage
login_manager = LoginManager()
login_manager.session_protection = 'strong'
login_manager.login_view = 'auth.login'
def create_app():
app = Flask(__name__)
app.config.from_object(DevelopmentConfig)
app.register_blueprint(main_blueprint)
app.register_blueprint(auth_blueprint, url_prefix='/auth')
login_manager.init_app(app)
storage = Storage()
storage.init_app(app) #initialise it
@login_manager.user_loader
def load_user(user_id):
from .models import User
try:
user = User.get(User.id == int(user_id))
except User.DoesNotExist:
user = None
return user
@login_manager.unauthorized_handler
def unauthorized_callback():
return redirect(url_for('auth.login'))
return app
その後、私はアプリ/メイン/ views.pyにストレージをインポートしよう
と
from .. import storage
と
from ..__init__ import storage
が、私はそれがこのように育つfrom app import storage
とfrom .. import storage
を使用する場合、それはまだうまく を動作することはできません。
Traceback (most recent call last):
File "run.py", line 1, in <module>
from app import create_app
File "/home/lc/workspace/homeworkAdminSystem/app/__init__.py", line 2, in <module>
from .main import main as main_blueprint
File "/home/lc/workspace/homeworkAdminSystem/app/main/__init__.py", line 5, in <module>
from . import views, errors
File "/home/lc/workspace/homeworkAdminSystem/app/main/views.py", line 5, in <module>
from .. import storage
ImportError: cannot import name storage
私が試したときにfrom ..__init__ import storage
それが表示されます。
Traceback (most recent call last):
File "run.py", line 1, in <module>
from app import create_app
File "/home/lc/workspace/homeworkAdminSystem/app/__init__.py", line 2, in <module>
from .main import main as main_blueprint
File "/home/lc/workspace/homeworkAdminSystem/app/main/__init__.py", line 5, in <module>
from . import views, errors
File "/home/lc/workspace/homeworkAdminSystem/app/main/views.py", line 6, in <module>
from ..__init__ import storage
File "/home/lc/workspace/homeworkAdminSystem/app/__init__.py", line 3, in <module>
from .auth import auth as auth_blueprint
File "/home/lc/workspace/homeworkAdminSystem/app/auth/__init__.py", line 5, in <module>
from . import views
File "/home/lc/workspace/homeworkAdminSystem/app/auth/views.py", line 4, in <module>
from ..models import db, User, Homework, Score
File "/home/lc/workspace/homeworkAdminSystem/app/models.py", line 3, in <module>
from .__init__ import login_manager
ImportError: cannot import name login_manager
、ここではそれに私のモデル(アプリ/モデル)である私がfrom .__init__ import login_manager
を使用しますが、それはうまく働いたので、私はそれを混同していますので、どのように私は私のviews.pyにストレージをインポートすることができます?
ああ、私は今すぐ自分のPCを手に入れたいと思っています。私は明日の朝にお試しになります。ありがとうございます。 –
私はcreate_appの外にストレージinitialistaを入れようとしましたが、それでも動作することはできません。何でもありがとう。 –
多分機能を完全に取り除くことができますか?または、ストレージ変数も返すことができます – David