すべてのフラスコ2.0で新しい


Photo by Markus Spiske on Unsplash


フラスコは、Web開発の最も使用されるPythonフレームワークの一つです.最近新しいリリースが出てきた.2.0.0 .
このポストでは、我々は大きな変化を経験します.あなたが完全な変化ログを望むならば、クリックしてくださいhere .

変化


フラスコで導入された大きな変化を乗り越えましょう2.0.0

Python 2と3.5のサポートを落としました


最も破壊的な変更はPythonのサポートされていません2 and 3.5 . まあ、それは私たちはとにかく、これらのバージョンからとにかく、Python2 本当に古いです!
また、落とし3.5 and 2 サポートは次の変更に必要です.

入力ヒント


Python3.7 型注釈のサポートを追加しました.これは、どのようなタイプになるかを他の人に伝えるために変数にタイプヒントを追加することができます.これは、特定の関数の戻り値の型を見つけるためにDocsを表示する必要がなくなります.
ただし、この型のヒントは強制されません.これはpython 通訳
a: str = 5

To check your types, use an external linter like mypy


フラスコ2.0.0 今完全にタイプされているので、あなたがインポートするときにこれ以上厄介な瞬間request からflask また、IDEはそのメソッドを自動補完しません.
フラスコのタイプヒント間の違いを見ることができます2.0.0 との以前のバージョンhelp() 機能

上の画像はフラスコ1.1.4 's文字列と下のイメージはフラスコを示します2.0.1 's文字列.タイプヒントに注意してください

新しい設定。fromount file ()メソッド


あなたはConfig.from_json() , またはapp.config.from_json() JSONファイルを使用したフラスコの設定方法.フラスコで2.0.0 , それはConfig.from_file .
このメソッドの構文は次のとおりです.
app.config.from_file(filename: str, loads_function)
さて、もし我々が古いものを実装したいならfrom_json 以下のコードを見てください.
import json

app.config.from_file(filename: str, json.load)
これは、パースするために同じことをするために我々を開きますTOML ファイル:
import toml

app.config.from_file(filename: str, toml.load)

You need to install the toml package for this!


新しいルートデコレータ


フラスコは今ルートを定義するための新しいデコレーターを持っています.以前に@app.route(path: str) 我々のアプリのルートを定義するにはGET 我々はmethods 我々のデコレータへのパラメタ.
今、フラスコはExpressJSのルートに従っているとHTTPメソッドに固有のルートを定義するためのデコレータを追加しました.
# You can now use these instead of app.route
@app.get(path)
@app.post(path)
@app.put(path)
@app.delete(path)
@app.patch(path)

小さな変化


以下にプロジェクトに影響を与える小さな変更のリストを示します.
  • いくつかsend_file パラメータが改名され、古い名前は推奨されません.attachment_filenamedownload_name . cache_timeoutmax_age . add_etagsetag .
  • 読み込むとき.env or .flaskenv 現在の作業ディレクトリはファイルの場所に変更されません.
  • helpers.total_seconds() は推奨されない.用途timedelta.total_seconds() 代わりに.
  • そして、このリストの私のお気に入りの機能:
  • flask shell デフォルトのPythonシェルのようなタブと履歴補完を設定しますreadline インストール済み
  • ハウツーとスタイル


    チェンジユアFlask 依存requirements.txt , Pipfile or pyproject.toml これを:
    Flask==2.0.0
    
    実行:
    pip3 install -r requirements.txt
    

    You can no longer use python2, so beware of that!


    結論


    これはもちろん、完全な変更ログです.あなたが完全な変化ログを望むならば、クリックしてくださいhere .