我很抱歉,这必须是一个重复,但我还没有找到任何有帮助的,所以我想这一定是一个导入或语法问题?另外,我在这里学习Python和HTML的速成课程,现在是期末考试周,请耐心听我说。你知道吗
我正在做一个家庭作业,指定一个HTML页面必须使用一个带有GET方法的表单,并将其数据发送回原始位置“assignment10.HTML”。应用程序从不进入使用GET提交的表单的函数,只是在提交后重新加载页面(url有查询字符串)。如果我在表单和函数参数中使用POST作为方法并使用请求.form.get(). 如果有关系的话,我使用的是一个带有ubuntu64位的虚拟机
我四处搜索过,但大多数答案都涉及json、ajax或其他软件,但由于这是一个任务,我仅限于python文件和flask的templates文件夹。你知道吗
我已经使用请求.form.get()和请求.args.get()但据我所知,这不是这里的障碍。我被困在这一点上,我需要知道我的错误是什么。你知道吗
# assignment10.py
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/assignment10.html')
def start():
return render_template('Start.html')
@app.route('/assignment10.html', methods=['GET']) #Enters if 'POST' instead
def next():
return "Entered next()" # just to test function is entered
fname = request.args.get('fname') #change to .form.get()
lname = request.args.get('lname') # " "
# render next template
<!-- Start.html -->
<!DOCTYPE html>
<html>
<head>
<title> Assignment 10 </title>
<script>
function validate(){
<!-- if fname && lname are not blank return true else false -->
}
</script>
</head>
<body>
<!-- switch to method="POST" works -->
<form action = "assignment10.html" method="GET" onsubmit="return validate()">
Your first name:
<input type="text" name="fname" id="fname" value="First"><br>
Your last name:
<input type="text" name="lname" id="lname" value="Last"><br>
<input type="submit" value="Submit">
</form>
<div id="msg"></div>
</body>
</html>
您只需要一条路线即可满足您的要求。
第一个请求
fname
和lname
是None
为什么“开始”不工作?:
@app.route('/assignment10.html', methods=['GET'])
@app.route('/assignment10.html')
两条路线相等。
因为
@app.route
的默认方法是['GET']
相关问题 更多 >
编程相关推荐