#author("2021-11-29T21:57:31+00:00","","")
#author("2021-11-29T21:58:02+00:00","","")
[[メモ]]

*目次 [#x7f71262]

#CONTENTS

**【Flaskについて】 [#h14aec07]
***Flaskとは [#a9528845]
flaskはpythonで使えるwebアプリケーションのフレームワークです.webアプリを一から作るのは大変なのでフレームワークに手伝ってもらいます.

***なぜFlaskなのか [#d3fe79a7]
pythonのwebアプリのフレームワークはいくつか存在しますがflaskの良さはバランスがいいことです.
-Django 機能は多いが学習コストが高く,小さなプロジェクトには不向き
-bottle 学習コストは低いが機能があまりなく,自分が実装したい機能が存在しないことがある
-flask バランスが良い😊

**【準備】 [#nf8e9c21]
*** 実行環境[#pebc3bab]
-Python 3.8.7
-Flask 2.0.2
-Werkzeug 2.0.2

***pythonのインストールはこちら [#h32652f0]
[[Pythonのインストール方法(Windows)]]

***flaskのインストール [#m1abcc47]
flaskはpythonの標準モジュールなのでpipでインストールできます.コマンドプロンプトを開いて
 pip install flask
flaskの確認は
 flask --version

**【flaskの最小構築】 [#fed3ddb3]
webアプリの最小構築として定番の「Hello, World!」の出力を行います.

***ディレクトリ構築 [#bd5f5e58]
最小構築ということで使うファイルは2つだけです.もうすこし凝った作りになるとhtmlファイルなども絡んできます.
 (directry)
 └app
  |└app.py
 └run.py

*** app.py [#e21773f5]
アプリ中身を書くファイルです.リクエストされたURLに応じてどのHTMLファイルを返すかを指定します.
 #Flaskとrender_template(HTMLを表示させるための関数)をインポート
 from flask import Flask,render_template
 
 #Flaskオブジェクトの生成
 app = Flask(__name__) 
 
 
 #「/」へアクセスがあった場合に、"Hello World"の文字列を返す
 @app.route("/")
 def hello():
    return "Hello World!"
 
 
 #app.pyをターミナルから直接呼び出した時だけ、app.run()を実行する
 if __name__ == "__main__":
    app.run(debug=True)

***run.py [#k070641c]
サーバーを立ち上げるためのファイルです.基本的にこのファイルはいじらないです.
 from app.app import app
 
 if __name__ == "__main__":
     app.run()

***実行 [#j00ea8cc]
以上のファイルの準備ができたら,コマンドプロンプトを開き
 python run.py
でサーバーが立ち上がります.
http://127.0.0.1:5000/
http://127.0.0.1:5000/ にアクセスし,「Hello World!!」が表示されれば最小構築の完了です.


**【参考文献】 [#a42eac55]
https://qiita.com/kiyokiyo_kzsby/items/f8aa0bf68007e18d6882 にアクセスし,「Hello World!!」が表示されれば完成です.
https://qiita.com/kiyokiyo_kzsby/items/f8aa0bf68007e18d6882

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS