4
我有以下代碼瓶,文件__init__.py工作:config.from_object不瓶與Python 3
from flask import Flask
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from flask_sqlalchemy_session import flask_scoped_session
from . import configmodule
app = Flask(__name__)
engine = create_engine(configmodule.DevelopmentConfig.SQLALCHEMY_DATABASE_URI) # <--- THIS WORKS
session_factory = sessionmaker(bind=engine)
session = flask_scoped_session(session_factory, app)
app.config.from_object('configmodule.DevelopmentConfig') # <--- THIS FAILS IN Python 3
...
文件configmodule.py是在同一目錄__init__.py以上。
我運行使用Python 3.5.2之後,我得到:
werkzeug.utils.ImportStringError: import_string() failed for 'configmodule.DevelopmentConfig'. Possible reasons are:
- missing __init__.py in a package;
- package or module path not included in sys.path;
- duplicated package or module name taking precedence in sys.path;
- missing module, class, function or variable;
Debugged import:
- 'configmodule' not found.
此錯誤是在代碼段的最後一行:
app.config.from_object('configmodule.DevelopmentConfig') # <--- THIS FAILS IN Python 3
我與運行沒有問題Python 2.任何想法如何使它與Python 3一起工作?謝謝。
謝謝,我曾試過這兩個,它沒有工作。 – jazzblue
絕對進口作品。它可能無法正常工作,這取決於您的目錄結構是什麼樣子。 – dirn
我收回它: .configmodule.DevelopmentConfig的作品。謝謝! –
jazzblue