はじめに
この記事ではFlaskでアプリケーションを立ち上げ、**Flaskマスターに俺はなる!**と画面に表示することを最終目標としています。
開発環境(前提条件)
・python3.7.3(筆者のpythonバージョンです)
・pipコマンドが使える
・mac
もし、python3系をインストールしていない場合は
https://qiita.com/nissynishizawa/items/1b2cfb6c4e4518185276
この方の記事を参考にpyenvというパッケージ管理ツールをインストールしpythonのバージョンを変更してください。
フォルダの構成
今回作るアプリのフォルダ構成です!
Flask
├── Pipfile
├── Pipfile.lock
├── flask_box
│ ├── __init__.py
│ └── views.py
└── server.py
PipenvとFlaskのインストール
PipenvはPythonのパッケージングツールで、簡単に仮想環境を用意できるありがたいツールです。
それでは、早速インストールしてみましょう!
以下のコマンドをターミナルで実行してください。
pip install pipenv
インストール後に
pipenv --version
と実行しバージョンが表示されたら成功です!
では、次に仮想環境の準備をしていきましょう!
まずは、Flaskというフォルダを作成してください。作成できたらFlaskフォルダ内に移動し、以下のコマンドを実行してください。
pipenv --three
このコマンドは仮想環境を用意するためのものです、実行すると「Pipfile」が作成されていると思います。
仮想環境ができたので、早速中に入ってみましょう!
以下のコマンドを実行してください。
pipenv shell
このコマンドを実行することで、仮想環境が動きます。ターミナルのuser名の左側に(Flask)と表示されていたら成功です。
ここまで完了したら、Flaskのパッケージをインストールします。
以下のコマンドを実行してください。
pipenv install Flask
インストールに成功すると、「Pipfile.lock」が作成されていると思います!
アプリケーションの作成
仮想環境を作成できたので、ここからはviewに文字を表示するためのプログラムを書いていきましょう!
まずは、サーバーを立ち上げるためのファイルを作成します。Flaskフォルダの直下にserver.pyというファイルを作成してください。作成したら以下のように記述してください。
from flask_box import app
if __name__ == '__main__':
app.run(debug=True)
簡単に説明をします。「from flask_box import app」で、flask_boxフォルダ内のappというモジュールをこのファイルで使わせてくれ〜とお願いをして、「app.run」でアプリケーションを立ち上げてーと命令していると思ってください。「debug=True」はデバッグモードを有効にするという意味です。
サーバー起動用のファイルを作成したので、次はviewファイルを作成していきましょう!
Flaskフォルダの直下にflask_boxというフォルダを作成してください。作成したら、flask_box内に移動し、
__init__.py
というファイルを作成し、以下のように記述してください。
from flask import Flask
app = Flask(__name__)
import flask_box.views
これも簡単に説明すると、Flask本体を使えるようにimportして、appという変数にアプリケーションの核を入れ、flask_box内のviewsファイルを読み込めるようにしておいて〜と指示している感じです。
ここまで完了したら、viewファイルの作成に入りましょう!
flask_boxの直下にviews.pyというファイルを作成し、以下のように記述してください。
from flask_box import app
@app.route("/")
def index():
return "Flaskマスターに俺はなる!"
ここではルーティングの設定をしています。
書いている内容は、アプリケーションを立ち上げたらindexメソッドを実行してviewに表示してーといった感じです!
これで準備は整いましたので、最後にサーバーを起動してみましょう。
以下のコマンドを実行してください。
(一つ注意ですが、このコマンドはFlaskフォルダに移動してから実行してください。flask_box内で実行すると「No such file or directory」といったメッセージがでてしまいます。)
python server.py
サーバーの起動に成功すると、このようなメッセージが表示されると思います。
Serving Flask app "flask_box" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production
deployment.
* Debug mode: on
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
最初は赤文字でびっくりすると思いますがエラーではないので大丈夫です↓
WARNING: This is a development server. Do not use it in a production deployment.
最後に、以下のurlをGoogleに貼り付けてEnterを押してください。
http://127.0.0.1:5000/
画面にFlaskマスターに俺はなると表示されていたらアプリの完成です!
おわりに
ここまで読んでいただきありがとうございます。間違い等がありましたらご指摘いただければ幸いです。