HOWTO · Flask
Flask アプリルート
この説明では、Flask でルートを作成する方法と、Flask でルートを呼び出すときに応答を取得する方法について学習します。
このページの内容
Flask でルートを作成する方法と、Flask でルートを呼び出すときに応答を取得する方法を学習します。
Flask で app.route() デコレータを使用してページを作成する
ルーティングできる方法はデコレータを使用することですが、デコレータとは何ですか?さて、この@app.route('/') のような関数を持つ@シンボルを見ると、それはデコレータです。
これは、既存の Python 関数をまとめて、その動作を変更できる方法です。URL を戻り値にルーティングまたはマップし、ユーザーが URL を要求するたびに、サーバーの応答は関数の戻り値になります。
もっと意味のある例をいくつか紹介しますので、ルートを作成しましょう。
@app.route('/fund-api')
次に、Fund_Func() という関数を定義します。これにより、ユーザーが通常/fund-api のような URL になるページにアクセスするたびに、この関数はこの関数でラップされたすべてのコンテンツを返します。HTML <h2> タグを返します。
def Fund_Func():
return "<h2>Your fund is returned</h2>"
このサーバーを保存して実行すると、インデックスページにアクセスして、URL 内に fund-api を書き込むことができます。つまり、サーバーに Fund_Func ページを提供するように要求し、要求が有効かどうかを確認します。。ルートが有効な場合、このルート内に存在する関数が実行されます。
render_template() を使用して HTML を含めるより良い方法があります。私たちが行うもう 1つのことは、ルート内で変数を使用することです。
Web ページを設定していて、この Web ページ内にプロファイルセクションがあり、どのユーザーがそのプロファイルを使用しているかを知りたいとします。
この URL の一部になるには変数を結合する必要があり、その変数に応じてコンテンツが変更されます。次に、新しいルートを作成します。ルート内に、candidate_name という変数を追加し、山かっこで囲みます。
ここで、ルート内で使用している関数内にパラメーターを渡します。次に、画面に表示したいものを使用してこの変数を返すことができます。この変数を URL から渡します。
@app.route("/fund-user-api/<candidate_name>")
def Fund_Func_Var(candidate_name):
return "<h2>Hi %s,your fund is returned</h2>" % candidate_name
URL で変数値を渡すと、渡したパラメーターで応答が返されます。パラメーター値を渡さないと、これも URL の一部であるため、エラーが発生します。
完全な Python コード:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return "The main page"
@app.route("/fund-api")
def Fund_Func():
return "<h2>Your fund is returned</h2>"
@app.route("/fund-user-api/<candidate_name>")
def Fund_Func_Var(candidate_name):
return "<h2>Hi %s,your fund is returned</h2>" % candidate_name
if __name__ == "__main__":
app.run(debug=True)