まずFlaskをInstallします。
pip install flask
次はDirectoryを作ります。
mkdir hello_world
今度はhello_world folderの中に入ります。
cd hello_world
main.pyを作成します。
touch main.py
最後はEditorを開いて↓をのコードを入れます。
#coding:utf-8 from flask import Flask app=Flask(__name__) @app.route("/") def hello(): return "hello world!" if __name__ =="__main__": app.run()
説明
#coding:utf-8
自分のmain.pyがutf-8でEncodeしてますよ!と宣言します。
from flask import Flask
app=Flask(__name__)
flaskからFlaskクラスをImportしinstantiateします。(__name__)といparameterはアプリケーションに何処でresourceを探すのかを教えます。
@app.route("/") def hello(): return "hello world!"
もし/なら、”hello world!”をReturnします。
if __name__ =="__main__": app.run()
最後はアプリケーションを走ります。
CMDで
python3 app.py
http://localhost:5000をアクセスすれば、
CMDからみえると、
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 – – [13/Dec/2017 23:09:05] “GET / HTTP/1.1” 200 –
127.0.0.1 – – [13/Dec/2017 23:09:06] “GET /favicon.ico HTTP/1.1” 404 –
では今度ちゃんとしたHTML Codeを嵌めましょう。
#coding:utf-8 from flask import Flask app=Flask(__name__) app.debug=True @app.route("/") def hello(): return "<html><head><title> hi title</title></head><body>Hi Body</body></html>",200 if __name__ =="__main__": app.run()
Returnの所は<html>….</html>に入れ込んで、最後は200も一緒に渡しします。つまりHTMLのStatusCode、200もとりあえず一緒にReturnします。
python3 app.py
うん、Titleもちゃんと変わるしね。
要素もちゃんと分けて入ってますね。
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 830-795-221
127.0.0.1 – – [13/Dec/2017 23:36:07] “GET / HTTP/1.1” 200 –
では最後色んなPathをアクセスするとときのCodeも載ります。
#coding:utf-8 from flask import Flask, render_template app=Flask(__name__) app.debug=True @app.route("/") def hello(): return render_template("index.html") @app.route("/page1") def page1(): return render_template("page1.html") if __name__ =="__main__": app.run()
今回はFlaskだけではなく、render_templateも一緒にImportします。
@app.route(“/page1”)のときはpage1()をCallされ、page1.htmlが呼ばされます。
python3 app.py
http://127.0.0.1:5000/をアクセスすると、index.htmlが出てきましたね。
http://127.0.0.1:5000/page1だと
こうになります。
folderの構造はこんなルールがあります: