Flaskは、Python用の無料のオープンソースマイクロWebフレームワークであり、開発者が安全でスケーラブルで保守可能なWebアプリケーションを構築できるように設計されています。 FlaskはWerkzeugandに基づいており、テンプレートエンジンとしてJinja2を使用しています。
Djangoとは異なり、デフォルトでは、FlaskにはORM、フォーム検証、またはサードパーティライブラリによって提供されるその他の機能は含まれていません。 Flaskは、Flaskアプリケーションに機能を追加するPythonパッケージである拡張機能を念頭に置いて構築されています。
ニーズに応じて、Flaskをインストールするさまざまな方法があります。システム全体にインストールすることも、pipを使用してPython仮想環境にインストールすることもできます。
Flaskパッケージも公式のUbuntuリポジトリに含まれており、apt
を使用してインストールできます。 パッケージマネージャー。これはUbuntu18.04にFlaskをインストールする最も簡単な方法ですが、仮想環境にインストールするほど柔軟ではありません。また、リポジトリに含まれているバージョンは、常に最新バージョンのFlaskよりも遅れています。
Python仮想環境の主な目的は、さまざまなPythonプロジェクト用に分離された環境を作成することです。このようにして、1台のコンピューターに複数の異なるFlask環境を設定し、他のFlaskインストールに影響を与えることを心配せずに、プロジェクトごとに特定のバージョンのモジュールをインストールできます。 Flaskをグローバル環境にインストールする場合、コンピューターにインストールできるFlaskバージョンは1つだけです。
Ubuntu 18.04へのFlaskのインストール#
次のセクションでは、Ubuntu18.04のPython仮想環境にFlaskをインストールする方法について説明します。
1。 Python 3とvenvのインストール#
Ubuntu18.04にはデフォルトでPython3.6が付属しています。次のように入力して、Python3がシステムにインストールされていることを確認できます。
python3 -V
出力は次のようになります。
Python 3.6.6
Python 3.6以降、仮想環境を作成するための推奨される方法は、venv
を使用することです。 モジュール。 python3-venv
をインストールするには venv
を提供するパッケージ モジュールは次のコマンドを実行します:
sudo apt install python3-venv
モジュールがインストールされると、Flaskアプリケーション用の仮想環境を作成する準備が整います。
2。仮想環境の作成#
Python3仮想環境を保存するディレクトリに移動することから始めます。これは、ホームディレクトリ、またはユーザーが読み取りと書き込みのアクセス許可を持っているその他のディレクトリにすることができます。
Flaskアプリケーション用の新しいディレクトリを作成し、そこに移動します:
mkdir my_flask_app
cd my_flask_app
ディレクトリ内に移動したら、次のコマンドを実行して新しい仮想環境を作成します。
python3 -m venv venv
上記のコマンドは、venv
というディレクトリを作成します 、Pythonバイナリのコピー、Pipパッケージマネージャー、標準のPythonライブラリ、およびその他のサポートファイルが含まれています。仮想環境には任意の名前を使用できます。
この仮想環境の使用を開始するには、activate
を実行して仮想環境をアクティブ化する必要があります スクリプト:
source venv/bin/activate
有効化されると、仮想環境のbinディレクトリが$PATH
の先頭に追加されます。 変数。また、シェルのプロンプトが変更され、現在使用している仮想環境の名前が表示されます。私たちの場合、それはvenv
。
3。 Flaskのインストール#
仮想環境がアクティブ化されたので、Pythonパッケージマネージャーpipを使用してFlaskをインストールできます:
pip install Flask
仮想環境内では、コマンドpip
を使用できます pip3
の代わりに およびpython
python3
の代わりに 。 Flaskバージョンを出力する次のコマンドを使用してインストールを確認します。
python -m flask --version
この記事を書いている時点で、Flaskの最新の公式バージョンは1.0.2です
。Flask 1.0.2
Python 3.6.6 (default, Sep 12 2018, 18:26:19)
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]]
Flaskのバージョンは、ここに表示されているバージョンとは異なる場合があります。
4。最小限のフラスコアプリケーションの作成#
このガイドでは、「HelloWorld!」というテキストを表示するだけの簡単なhelloworldアプリケーションを作成します。
テキストエディタまたはPythonIDEを開き、次のファイルを作成します。
〜/ my_flask_app / hello.pyfrom flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
コードを1行ずつ分析してみましょう。
- 最初の行では、Flaskクラスをインポートしています。
- 次に、Flaskクラスのインスタンスを作成します。
- 次に、
route()
を使用しますhello_world
を登録するデコレータ/
の関数 ルート。このルートがリクエストされると、hello_world
が呼び出され、「HelloWorld!」というメッセージが表示されます。クライアントに返されます。
ファイルをhello.py
として保存します ターミナルウィンドウに戻ります。
5。開発サーバーのテスト#
flask
を使用します アプリケーションを実行するコマンドですが、その前に、FLASK_APP
を指定して、アプリケーションをロードする方法をFlaskに指示する必要があります。 環境変数:
export FLASK_APP=hello.py
flask run
上記のコマンドは、開発用組み込みサーバーを起動します。
出力は次のようになります。
* Serving Flask app "hello.py"
* Environment: production
WARNING: Do not use the development server in a production environment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
仮想マシンにFlaskをインストールし、Flask開発サーバーにアクセスする場合は、--host=0.0.0.0
を追加して、サーバーを公開できます。 flask run
へ 指図。
http://127.0.0.1:5000
を開きます Webブラウザーで、「HelloWorld!」が表示されます。メッセージ。
開発サーバーを停止するには、CTRL-C
と入力します ターミナルで。
6。仮想環境の非アクティブ化#
作業が完了したら、deactivate
と入力して、環境を非アクティブ化します。 通常のシェルに戻ります。
deactivate