プログラミング

【Python】Flaskで掲示板を作ってみよう②

投稿日:2020年12月16日 更新日:

「Flaskで掲示板を作ってみよう①」から、間が空きましたが続きを書いていきたいと思います。
今回は、実際に動作したコードを紹介します。

前回の記事はこちら

Flaskで掲示板を作ってみよう

Flaskを使う上で学んでおきたいものを、まず紹介します。
自分がここまでくるのに学んできたものになります。

他の参考記事

.pyファイルを編集しよう

前回作成した「bbs.py」を下のように変えました。

from flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

SQLALCHEMY_TRACK_MODIFICATIONS = False
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

db_uri = 'sqlite:///test.db'
app.config['SQLALCHEMY_DATABASE_URI'] = db_uri
db = SQLAlchemy(app)

class Message(db.Model):
    id_ = db.Column(db.Integer, primary_key=True, autoincrement=True)
    message = db.Column(db.Text())

    def __init__(self, message):
        self.message = message

try:
    db.create_all()
except Exception as e:
    print(e.args)
    pass

@app.route("/")
def index():
    text = Message.query.all()
    return render_template("index.html", lines=text)

@app.route("/result", methods=["POST"])
def result():
    message = request.form["post_message"]
    post_message = Message(message=message)
   
    db.session.add(post_message)
    db.session.commit()
    return render_template("result.html", message=message)

if __name__ == "__main__":
    app.run(host="localhost", debug=True)

1つ1つの意味は、別の機会に紹介したいと思います。

投稿完了ページ(result.html)を作ろう

<!--DOCTYPE html-->
<html lang="ja">
<head>
    <meta charset="utf-8">
    <title>投稿完了</title>
</head>
<body>
  <h2>投稿が完了しました</h2><br>
    <form action="/" method="get">
      <button type="submit">戻る</button>
    </form>
</body>
</html>

さらに「result.html」を「templates」に追加しました。

ここですね。

投稿してみよう

では、「localhost:5000」にアクセスしましょう。

「ANDoblog」で投稿してみます。

「result.html」が表示されます。

投稿内容が表示されています。

まとめ

「Flask」で掲示板を作成してみました。
このような簡単なものでも結構時間がかかりましたね。
特に「データベース」の使い方でしょうか。
ぜひ参考にしてみてください。
それではまた。

-プログラミング
-

執筆者:


  1. […] 【Python】Flaskで掲示板を作ってみよう② […]

  2. […] 【Python】Flaskで掲示板を作ってみよう② […]

comment

メールアドレスが公開されることはありません。

関連記事

【Python】ログイン機能を作る「Flask-Login」⑦

「ログイン機能を作る」【Part7】。前回は「データベース」の設定を追加しました。今回は「ログイン処理」の部分を変更していこうと思います。 ログイン処理を変更しよう 「名前」に「ANDoblog」,「 …

【Python】VBAをPythonで再現してみる①

以前に「エクセル」で出来るプログラミングとして「VBA」を紹介しましたが今回は「Python」でその中身を再現していきたいと思います。 VBAをPythonで再現してみよう 「VBA(Visual B …

【Python】SQLAlchemyってなんだ?

「Flask」で掲示板を作るにあたって、「データベース」について調べていると「SQLAlchmy」というライブラリがあることを知りました。一般的には「ORM」というものらしいです。今回は、そんな「SQ …

ローカル掲示板①

今回はPHPの学習を兼ねて掲示板を作っていきます。 ①ベース作成 まずは掲示板のベースを作っていきます。HTMLを使いますね。 とりあえずこんな感じにします。 <!DOCTYPE html&gt …

【Windows】ビット数を確認する方法

ソフトをインストールするうえで「64ビット」か「32ビット」で悩んだことはありますか?今回は、そんな「ビット数」の確認方法を紹介します。 ビットってなんだ? 「ビット」とは、コンピューターがデータを処 …

YouTube