[英]How do I fix this ImportError that is preventing my code from executing?
根據Flask在線教程的說明構建了一個小型應用程序之后,我不斷收到此ImportError:
eloiim:~ iivri.andre$ export FLASK_APP=Minimalapp.py
eloiim:~ iivri.andre$ flask run
Traceback (most recent call last):
File "/usr/local/bin/flask", line 11, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 478,in main
cli.main(args=args, prog_name=name)
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 345, in main
return AppGroup.main(self, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/click/core.py", line 696, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/local/lib/python2.7/site-packages/click/core.py", line 889, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python2.7/site-packages/click/core.py", line 534, in invoke
return callback(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/click/decorators.py", line 64, in new_func
return ctx.invoke(f, obj, *args[1:], **kwargs)
File "/usr/local/lib/python2.7/site-packages/click/core.py", line 534, in invoke
return callback(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 388, in run_command
app = DispatchingApp(info.load_app, use_eager_loading=eager_loading)
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 124, in __init__
self._load_unlocked()
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 148, in _load_unlocked
self._app = rv = self.loader()
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 209, in load_app
rv = locate_app(self.app_import_path)
File "/usr/local/lib/python2.7/site-packages/flask/cli.py", line 89, in locate_app
__import__(module)
ImportError: No module named Minimalapp.py
這是我的代碼:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def IsSelf() :
return 'Hello 這是自'
這里也是我的ls -R輸出
eloiim:learnFlasC iivri.andre$ ls
Hello.py Minimalapp.py
Http.py resource_locator.py
我不確定自己做錯了什么。 有什么問題,我該如何解決?
使用FLask CLI
在命令行中,導航到包含項目的文件夾並運行:
export FLASK_APP=hello.py
flask run
注意,您需要“ .py”。 應用程序運行腳本的名稱應為其中包含代碼的腳本。 在本教程中為hello.py,但您可能將其稱為MinimalApp.py或類似名稱。 您將需要擁有0.11或更高版本的Flask新版本,因為此cli是一項新功能。
使用app.run()代替新的Flask cli
首先,清除文件夾中的所有內容或啟動一個新文件夾。 接下來,請確保您可以運行
import flask
在Python REPL中沒有任何錯誤(在終端中輸入“ python”以訪問REPL)。 創建一個名為run.py的文件,並將以下內容粘貼到其中:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def IsSelf() :
return 'Hello 這是自'
app.run()
保存。 在您的終端中,導航到包含該文件的文件夾並運行
python run.py
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.