FlaskでHTMLを返す方法


  1. 単純なHTMLファイルの返却: Flaskでは、静的なHTMLファイルを返すことができます。まず、Flaskアプリケーションを作成し、ルートURLに対して以下のようにルートを設定します。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
    return render_template('index.html')
if __name__ == '__main__':
    app.run()

上記の例では、render_template関数を使用してindex.htmlを返しています。Flaskは、テンプレートフォルダ内のindex.htmlファイルを探し、その内容をクライアントに返します。

  1. テンプレートにデータを渡す: Flaskでは、テンプレートにデータを渡して動的なHTMLを生成することもできます。以下は、render_template関数を使用してデータを渡す例です。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
    name = 'John Doe'
    return render_template('index.html', name=name)
if __name__ == '__main__':
    app.run()

上記の例では、nameという変数をindex.htmlに渡しています。index.html内で{{ name }}というタグを使用することで、渡されたデータを表示することができます。

  1. テンプレート内で条件分岐やループを行う: Flaskのテンプレートエンジンは、制御構造を使用して条件分岐やループを行うことができます。以下は、テンプレート内で条件分岐を行う例です。
<!DOCTYPE html>
<html>
<body>
    {% if name %}
        <p>Hello, {{ name }}!</p>
    {% else %}
        <p>Hello, stranger!</p>
    {% endif %}
</body>
</html>

上記の例では、nameが渡されている場合はその値を表示し、そうでない場合はデフォルトのメッセージを表示しています。

これらはFlaskでHTMLを返すための基本的な方法です。さらに高度な機能やフレームワークの利用方法については、公式のFlaskドキュメントを参照してください。