Flask(フラスク)は、プログラミング言語Python用の、軽量なウェブアプリケーションフレームワークである。標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Werkzeug WSGIツールキットとJinja2テンプレートエンジンを基に作られている。BSDライセンスで公開されている。

概要

Flaskは、標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Flask自身は、他のフレームワークがしばしば持っているような、データベース抽象化レイヤやフォーム値の検証などの機能を持たない。これは、どんなWebアプリケーションにも適合する良い基盤を作るための設計判断だとしている(例えば、テンプレートエンジンはほとんどのWebアプリケーションで有用だが、関係データベース等はすべてのアプリケーションが必要とするものではない)。とはいえ、それらの機能を、あたかもFlaskが元からサポートしているかのように追加できる拡張性も備えている。現段階において、オブジェクトリレーショナルマッパや、フォーム値の検証、ファイルのアップロード、ユーザログイン、種々のオープンな認証技術をサポートする拡張などが第三者によって提供されている。

歴史

FlaskはArmin Ronacherによって開発された。彼は『エイプリルフールのジョークとして作ったのだけれど、有名になって、いつのまにか本格的なアプリケーションになってしまった』と述べている。

バージョン0.10で、Python 3に対応した。

FlaskはPython愛好家の間で人気がある。2020年10月 (2020-10)現在、GitHub上のPythonのウェブ開発フレームワーク中でDjangoよりわずかに少ない2番目に多いスターを獲得しており、JetBrainsのPython Developers Survey 2018~2023では、最も人気が高いウェブフレームワークになった。

機能

  • 開発用サーバとデバッガを備える
  • テンプレートエンジンとしてJinja2を使用
  • RESTfulなリクエストディスパッチ
  • 整備されたドキュメント
  • 統合されたユニットテストサポート
  • メッセージ認証コード付きのセキュアCookieのサポート(クライアントサイドセッションを実現)
  • WSGI 1.0 の完全な準拠
  • Unicodeベース
  • Google App Engine互換
  • 機能を追加する各種の拡張が利用可能

サンプル

以下のサンプルコードは、ルートパスにアクセスすると "Hello World!" を表示するだけのアプリケーションである。

関連項目

  • Django
  • Pylons
  • Bottle
  • ウェブフレームワークの比較

脚注

外部リンク

  • Flaskウェブサイト
  • Flaskドキュメンテーション
  • Github上のプロジェクトページ
  • PyPI上のFlaskのページ

What Is Flask? (Definition, vs Django, Examples, History) Built In

Flask Photos, Download The BEST Free Flask Stock Photos & HD Images

Flask 1 Free Photo Download FreeImages

flask Free Photo Download FreeImages

Flask Framework Cratecode