저는 하나의 텍스트 필드 만 저장하는 단일 Flask 응용 프로그램을 Creatng하고 단일 웹 페이지에서 "message"필드가있는 양식을보아야합니다. 양식 아래에는 데이터베이스의 기존 메시지 목록이 있어야합니다. 사용자가 "message"필드에 무언가를 입력하고 양식을 제출하면 "message"를 SQLite의 테이블에 저장해야합니다. 그리고 메시지가 저장되면 사용자는 양식 및 메시지 목록이있는 페이지로 돌아와야합니다.버튼이 데이터베이스에있는 메시지를 제출하지 않습니다.
메시지가 표시되지 않습니다. 내 페이지는 데이터베이스를 만들 때 데이터베이스에 이미 저장된 메시지를 검색합니다.
Please Please SOMEONE은 양식에 기입 된 메시지를 보내주십시오.
내 연결 코드는 다음과 같습니다
@app.route('/message')
def message():
g.db = connect_db()
cur = g.db.execute('select msg_msg from msg')
message = [dict(msg_msg=row[0]) for row in cur.fetchall()]
g.db.close()
return render_template('message.html', message=message)
@app.route('/message', methods=['GET'])
def button():
if request.GET.get('Save').strip():
new = request.GET.get('input_msg').strip()
g.db = connect_db()
cur = g.db.execute("INSERT INTO msg (msg_msg) VALUES (?)", (new))
new_id = c.lastrowid
g.db.commit()
g.db.close()
return '<p>The new input_msg was inserted into the database, the ID is %s</p>' % new_id
else:
return render_template('message.html')
및 페이지의 HTML 코드 당신은 수신 데이터를 처리하기 위해 POST를 사용할 필요가
{% extends "template.html "%}
{% block content %}
<h2>You are in the Message Page</h2>
<br/>
<p><h4>In this page, You can view the Existing Messages and can also Submit your own message.</h4></p>
<br/><br/>
<h3>Enter Your Message:</h3><br/>
<form action="/message" methods='GET'>
<dl>
<dt>Message:
<dd><input type="text" name="input_msg" maxlength=80 style="width:300px">*Maximum Length = 80
</dl>
<input type=submit value="Save">
</form>
<h3>The Existing Messages:</h3>
{% for item in message %}
Msg_ID: <B>"{{ item.msg_id }}"</B><br/>Message: {{ item.msg_msg }} <br/><br/>
{% endfor %}
{% endblock %}
올바르게 기억하면 GET이 암시됩니다. 귀하의 파견이 표준이 아니기 때문에 flask.pocoo.org를 방문하여 문서를 살펴 보는 것이 좋습니다. 기본 @app.route() 함수에서 모든 get 요청을 처리해야합니다. –