Posted at

Flaskで簡単アプリケーション構築


はじめに

この記事では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というファイルを作成してください。作成したら以下のように記述してください。


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

というファイルを作成し、以下のように記述してください。


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というファイルを作成し、以下のように記述してください。


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マスターに俺はなると表示されていたらアプリの完成です!


おわりに

ここまで読んでいただきありがとうございます。間違い等がありましたらご指摘いただければ幸いです。

参考文献

ゼロからFlaskがよくわかる本: Pythonで作るWebアプリケーション開発入門