添加URL参数以在flask中形成操作

时间:2016-09-03 01:41:41

标签: python forms flask

在提交表单时,有没有办法在表单之外传递额外的参数列表?

我知道我可以在表单中为我希望通过表单传递的每个参数创建一个新的隐藏输入字段,但还有另一种方法吗?我试图直接向表单操作添加参数,但这不起作用。整个代码可以在这里找到:

from flask import Flask, request
import os

app = Flask(__name__)

@app.route('/')
def index():
  print request.args
  return "<form action='/?foo=bar'><input name='variable' type='text' /></form>"

if __name__ == '__main__':
  port = int(os.environ.get('PORT', 8080))
  app.run('0.0.0.0', debug=True, port=port)

根据评论反馈澄清问题:

使用此代码,当我在文本框中输入“123”并按回车键时,我看到该网址为http://wardrobe-plus-jeffhou.c9users.io/?variable=123

我想要的是http://wardrobe-plus-jeffhou.c9users.io/?foo=bar&variable=12‌​3

1 个答案:

答案 0 :(得分:1)

我认为你应该展示你输入的内容和输出内容。

在您的代码中,index()函数默认接受GET方法,因此,如果您要从表单发布数据,请将methods添加到@app.route()

@app.route('/', methods=['GET', 'POST'])

并且,表格也应该添加post方法。

<form method='post', action='/'></form>