レコード#
- 昨日学んだのは、HTML のフォームを作成することでした。非常に簡単で、最後の演習問題はユーザーログインページとフォームを作成することでした。
- 今日学んだのは、flask とフォームをリンクさせる方法です。flask の request 関数を使用して、フォームから送信されたデータを取得します。
- まず、
from flask import Flask, request
を使用して flask をインポートします。 - flask のルートでデータを受け取る場合、受け取り方法を定義する必要があります。methods=get または post.
@app.route('/path', methods=["POST"])
。その後、コード内でrequest.form
を使用してすべてのフォームデータを取得できます。 request.form
のデータは辞書形式であり、変数に割り当てた後、コード内で正常に使用できます。例:form['username']
- 今日の演習は、昨日の基礎に検証機能を追加することです。データが一致する場合はログイン成功を表示し、そうでない場合は失敗を表示します。
CODE#
from flask import Flask, request
app = Flask(__name__)
@app.route("/login", methods=["POST"])
def process():
uname = '1'
umail = '[email protected]'
upass = '1'
page = ""
form = request.form
if form['username'] == uname and form['email'] == umail and form[
'password'] == upass:
page += f"ようこそ!"
else:
page += f"エラー!"
return page
@app.route('/')
def index():
page = """<form method="post" action="/login">
<p>名前: <input type="text" name="username" required> </p>
<p>メール: <input type="Email" name="email" required> </p>
<p>パスワード: <input type="password" name="password" required> </p>
<button type="submit">ログイン</button>
</form>
"""
return page
app.run(host='0.0.0.0', port=81)