[初級]FlaskでHTMLファイルを表示する方法

Flask
スポンサーリンク

こんにちは。

PythonのFraskでHTMLを表示するやり方を記載します。
(初心者向けの内容になります)

この記事が誰かの役に立ったら幸いです。

スポンサーリンク

概要

fraskはフレームワークなので、高度な表現(表示)をするためにHTMLを表示することが必要になります。

やり方は、fraskに直接HTMLを書き込むのではなく、まず別にHTMLファイルを用意します。
次に、Flaskのスクリプトファイルのディレクトリに「templates」という名前でフォルダを作り、HTMLを格納します。
最後に、Flaskのスクリプトでhtmlファイルを読み出せば表示できます。

※「templates」というフォルダ名は変更不可のようなです(理由はrender_template関数の項目で説明します)

用意したHTMLファイル

file名:index.html

<!doctype html>
<html lang=”ja”>
    <head>
         <title>Index </title>
            <meta charse=”utf8″/>
            <style>
                body{margin:10px;} 
               h1 {color:rgb(255, 127, 249);font-size:30pt;}
                p{fontsize:14pt;} 
           </style>
      </head></html>
<body> 
   <h1>Rope_blog</h1>
    <p>This is Flask sample for html.</p>
</body>
</hmtl>

用意したflaskのスクリプト

file名:app.py

from flask import Flask, render_template
app = Flask(__name__)
@app.route(‘/’)
def index():
    return render_template(‘index.html’)
if __name__ == ‘__main__’:
    app.debug=True
    app.run()

※ifの前にインデントを付けると実行できなくなるので注意

render_template関数

render_templateでHTMLを表示することができます。

@app.route(‘/’)のデコレーターで、アクセスされたらindex関数を実行するようにしています。
また、indes関数は、「render_template」という関数(引数が作成したhtmlファイル)の戻り値をreturnするようにしています。

引数に指定していたファイルは、「templates」フォルダの中から検索します(そのため、ファイル名は「templates」から変更不可)
そして、指定したファイルの中身を読み込み実行します。

表示結果

flaskのスクリプトを実行するとlocalhostに以下のように表示することができました。
(flaskでHTMLを表示することが出来ました。)

コメント

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