我试图在html中创建一个用户必须在文本字段中输入网址的网页。
<form name="submitURL" method ="post">
<input type="text" name="url_target">
<button type="submit">submit</button>
当用户按下提交按钮时,python脚本应该拦截用户插入的数据并将其传递给该脚本中的另一个函数。
Python脚本:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/')
def indhtml() :
return render_template('index.html')
@app.route('/index.html', methods = ['POST'])
def result():
result = request.form('url_target')
link = result.link
print (link)
return
if __name__ == '__main__' :
app.run(debug = True)
第一个渲染很好,我可以看到index.html页面,但是当我在textfield中插入一些东西时出现错误HTTP 405.
你有什么建议吗? :( 谢谢!
答案 0 :(得分:1)
您的函数result()
什么都不返回。
答案 1 :(得分:1)
您忘记了*@RequestMapping(value = "/sample/customers", method = POST)
public Customer session() {
return customerService.getCustomer();
}*
标记中的action="{{ url_for('result') }}"
,因此您将表单提交到同一页面,该页面不接受POST请求。
此外,<form>
与dict类似,因此您需要request.form
而非[]
才能访问它。 ()
也会失败,因为link = result.link
的字符串无法存在link
属性......