2016-11-05 4 views
1

の内部で作成されたときのconfig変数にアクセスフラスコI持って自分のフラスコのアプリケーションのための以下の構成:アプリが機能

ファイル構造:

run.py 
app/ 
    __init__.py 
    views/ 
    main/ 
     __init__.py 
     main.py 
    ... 

__init__.py

def createpp(): 
    app = Flask(__name__) 
    ... 
    return app 

main.py

... 

key = app.config['KEY'] 
hashingID = hash(key) 

@main.route('/', methods=['POST', 'GET']) 
def main(): 
    ... 
    return render_template('main/main.html') 

... 

ご覧の通り、私はmain.pyからapp.config['KEY']にアクセスしたいです。問題は、アプリケーションがcreate_app()の内部で設定されているため、単にインポートできないということです。

hashingIDは常に一定であり、多くの異なる経路で使用され、それ以外の場合は私は単にルートの内側

key = app.config['KEY'] 
hashingID = hash(key) 

を入れているだろう。

関数内で生成されたアプリケーションインスタンスから設定変数にアクセスできる方法がありますか?ありがとう。

答えて

0

これは、あなたが何をしようとしているかによって異なります。

あなたは私たちがcreate_app関数内Flaskインスタンスを作成する場所in this projectを見て、その同じ関数から、当社のさまざまな設定タスクを実行する他の多くの機能にapp変数を渡すことができます。

create_app関数の戻り値は最終的にモジュール内の最上位のapp変数に割り当てられ、他のモジュールでは必要に応じて(hereのように)インポートすることでアクセスできます。

関連する問題