Flask Python

Flaskで変数を文字列ではなくHTMLのタグとして読み込む方法

この記事は約2分で読めます。

 

flaskでアプリを作っているとアプリ内で生成したタグをHTML側で文字列ではなく、HTMLとして読み込ませたいときがあります。

 

from flask import Flask, render_template
import pandas as pd

app = Flask(__name__)
df = pd.DataFrame([[1,'山田'],[2,'山下'],[3,'山本']])

@app.route('/') 
def index():
    table = df.to_html(classes='table')
    return render_template('test.html', table=table)
if __name__ == "__main__":
    app.run(debug=True)

 

<test.html>

<html><h1>テーブルの中身</h1>{{ table }}</html>

 

<実行結果>

 

Flaskで変数を文字列ではなくHTMLのタグとして読み込む

結論からいくとhtmlのテンプレート内で、変数に |safeフィルターを使ってあげるとよいです。

 

{{ table }}→{{ table | safe }}

 

<test.html>

<html><h1>テーブルの中身</h1>{{ table | safe }}</html>

 

<実行結果>

 

 

テーブルタグが文字列としてHTMLとして認識されていることがわかります

 

 

関連記事:FlaskによるWebアプリ開発⑧~csvファイルアップロード機能を実装する

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました