Flask

オンラインドキュメント

https://pypi.org/project/Flask/

https://flask.palletsprojects.com/en/2.1.x/

インストール

pip install Flask
1

使い方

helloアプリケーションの作成

以下の内容で hello.py を作成する。

from flask import Flask, render_template
from markupsafe import Markup
 
app = Flask(__name__)
 
@app.route("/hello/")
def hello_world():
    text1 = '<h1>こんにちは、Flask</h1>\n<div class="result">\n<p>hello,</p>\n</div>\n'
    return render_template('index.html', title="こんちには", render_text=Markup(text1))
1
2
3
4
5
6
7
8
9

以下の内容で templates/layout.html を作成する。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="UTF-8">
    <title>{{title}}</title>
    <style>
      body  { background-color: black; color: white; margin: 30px; }
      h1  { color: gold; border-bottom: double 3px; font-weight: normal; }
      h2  { color: navajowhite; border-bottom: solid 2px; border-left: solid 20px; padding: 3px; font-weight: normal; }
      h3  { border-bottom: solid 1px white; padding: 3px; font-weight: normal; }
      h4  { border-top: solid 1px gold; padding: 3px; margin-top: 30px; font-weight: normal; }
      h4 p  { padding: 0px; margin: 0px; }
      .left  { text-align: left; }
      .right  { text-align: right; }
      .result  { margin-top: 10px; margin-bottom: 10px; margin-left: 60px; margin-right: 60px; }
      a  {  color: deepskyblue; text-decoration: underline dotted lightskyblue; }
    </style>
  </head>
  <body>
    {% block body %}{% endblock %}
  </body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

以下の内容で templates/index.html を作成する。

{% extends "layout.html" %}
{% block body %}
{{render_text}}
<footer><h4><p class="right">copyright 2022 eagle eight</p></h4></footer>
{% endblock %}
1
2
3
4
5

コマンドプロンプトで以下を実行する。

set FLASK_APP=hello
flask run -h 192.168.0.9 -p 5555 --reload
1
2

http://192.168.0.9:5555/hello/ にアクセスして動作を確認する。