Python-web-development-libraries-flask-framework
フラスコフレームワーク
Flaskは、外部ライブラリにほとんど依存しないマイクロフレームワークです。 それは非常に軽いフレームワークであり、私たちがやりたいことを何でもする自由を与えます。
この章では、PythonとFlaskフレームワークを使用してプロジェクトをビルドします。
Flaskの起動と構成
最も広く使用されているpythonライブラリと同様に、FlaskパッケージはPython Package Index(PPI)からインストールできます。 最初にディレクトリを作成します(この章では、 flaskProject というディレクトリを作成しました)。次に、プロジェクト関連のすべての依存関係が読み込まれる(flaskを含む)仮想環境を作成します( flaskEnv と呼びます)。 また、flask-sqlalchemyをインストールして、フラスコアプリケーションがSQLデータベースと簡単に通信できるようにすることもできます。
フラスコをインストールした後、flaskEnv(私たちのvirtualEnvironment名)は以下のようなものが表示されます-
フラスコでアプリを作成する
フラスコをインストールすることにより、次のように非常に少ないコード行でシンプルな「 hello application in flask 」を作成できます-
端末に次のように入力します-
そして、あなたは次の出力を見ることができます-
以下は、サンプルコードで行ったことの説明です-
- まず、Flaskクラスライブラリをインポートします。 このクラスのインスタンスはWSGIアプリです。
- 次に、このクラスのインスタンスを作成します。 アプリケーションのパッケージまたはモジュール名が最初の引数です。 静的ファイル、テンプレート、その他のファイルの場所をフラスコが知っていることが必須です。
- 次に、どのURLがメソッド/関数をトリガーするかを知るために使用するroute()デコレーターです。
URLルーティングの作成
URLルーティングを使用すると、Webアプリ内のURLを覚えやすくなります。 ここでいくつかのURLルートを作成します-
上記のURLに基づいて次のコードを記述し、app.pyとして保存できます。
ブラウザで次の出力を取得します-
次のようにブラウザで他のURLを試すことができます-
- http://localhost:5000/helloで実行すると、次の出力が得られます-*
- http://localhost:5000/membersで実行すると、-*
- http://localhost:5000/members/finddevguides/で実行すると、次の出力が表示されます-*
ただし、通常は(上記のように)文字列を返したくないため、テンプレートを返します。 そのために、flaskから関数「 render_template 」を使用し、いくつかの入力でrender_templateを返します。 したがって、以下の機能は私たちの仕事をします-
フォルダーテンプレートを作成し、それにhomelファイルを配置します。
次に、レイアウトについて説明します。 すべてのテンプレートにhtmlヘッドタグとボディタグを使用する代わりに、head&bodyタグを含むレイアウトを設計し、現在のビューまたは現在のテンプレートをラップします。 そのためには、1つの別個のファイルを作成し、 layoutl と呼ぶ必要があります。 これに、通常のheadタグ、bodyタグ、および他のすべての必要なタグを配置できます。
次のコード行で新しいレイアウトを作成できます-
上記のコードでは、タイトルトラックMyFlaskApを指定し、ヘッドでcss cdnを使用し、ボディブロックでjavascriptを使用してブートストラップを有効にしています。
次に、すべてのページにnavbarを作成する必要があります。 そのためには、最初にインクルードフォルダーを作成してから、その中に_navbarlファイルを作成する必要があります。 _navbarlでは、getbootstrap.comの標準スターターテンプレートを使用する必要があります。 新しく作成された_navbarlファイルは次のようになります-
そして、この_navbarlファイルをレイアウトファイルに含めます。
レイアウトブロックがあるので、このブロックをホームファイル(homel)で拡張できます。
私たちのhomelファイルは、以下のコードを使用して作成できます-
flaskapp.pyファイルを実行しようとすると、これを使用して、ブラウザに次の出力が表示されます-
ここで、 about タブをアクティブにします(現在、タブは機能していません)。 aboutタブのルートを作成し、テンプレートファイル aboutl を作成します。
appflask.pyのタブルートについては以下のようになります-
aboutlファイルは以下の内容になります-
HomeとAboutが処理されます。 Articlesの場合、ルートディレクトリに新しいファイル(data.py)を作成し、そこでデータを配置してWebページに呼び出します。
data.py
以下は articlesl のコードで、各uidの記事のタイトルを表示します。
要約すると、Flaskは軽量であるため、最も人気のあるPython Webフレームワークの1つです。 マイクロですが、拡張可能なpython Webフレームワークです。 必要な機能を提供することにより、flaskは単純なWebアプリケーションの開発を加速します。 そのため、Flaskは、小規模で複雑でないアプリケーションに適しています。