Larger Applicationsから学ぶ。このドキュメントでは、 .pyファイルにはすべてのビュー機能(上にルート()デコレータを持つもの)をインポートする必要がありますオブジェクト自体ではなく、しかし、それが入っているモジュール "
私はこれを行うときにどうすればよいか分かりません:from . import views
、それが成功しました。from views import *
でもうまくいきます。なぜ `から。インポートビューはFlaskの円のインポートを解決できますか?
myapplication/
runner.py
myflask/
__init__.py
views.py
templates/
static/
...
runner.py:
from testFlask import app
app.run()
myflask/__ init__.py:
私はこのようなこれらのファイル整理
from flask import Flask
app = Flask(__name__)
from . import views # why this can work????
myflaskを/ views.py:
from . import app
@app.route('/')
def index():
return 'Hello World!'
と私はそれを実行します:
$ cd myapplication
$ python runner.py
このフラスコアプリを実行するのは問題ありません。しかし、私はなぜfrom . import views
がこれを解決できるのか知りたいです円輸入フラスコに問題がありますか?そして、なぜ医者が言う:オブジェクト自体ではなく、モジュールそれは ????私はこのように行うとき
しかし、:
#some_dir/
# application.py
# views.py
#application.py
from flask import Flask
app = Flask(__name__)
import views # it doesn't work
# from views import * # it works
app.run()
#views.py
from application import app
@app.route('/')
def index():
return 'Hello World!'
#run it
$ python application.py
それは動作しません。
"モジュール(またはそのメンバー)を初めてインポートすると、モジュール内のコードは他のコードと同じように順番に実行されます; [post](http://stackoverflow.com/questions/22187279/python-circular-importing)で良いです!私は理解して、あなたに感謝します。 – zjyExcelsior