Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 请求表单烧瓶在GET请求中为空_Python_Python 3.x_Flask_Request_Frontend - Fatal编程技术网

Python 请求表单烧瓶在GET请求中为空

Python 请求表单烧瓶在GET请求中为空,python,python-3.x,flask,request,frontend,Python,Python 3.x,Flask,Request,Frontend,我试图创建一个搜索表单,从Api中获取一些数据,但是请求表单总是返回空的。我读过另一篇有类似问题的帖子,但我没有找到答案 我只想从主页上进行搜索,如果表单的按钮被按下并包含一些内容,则显示第二页 @app.route('/', methods=['GET', 'POST']) def home(): print(request.form) if 'btn_search' in request.form: search = request.args.get('se

我试图创建一个搜索表单,从Api中获取一些数据,但是请求表单总是返回空的。我读过另一篇有类似问题的帖子,但我没有找到答案

我只想从主页上进行搜索,如果表单的按钮被按下并包含一些内容,则显示第二页

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

    print(request.form)
    if 'btn_search' in request.form:
        search = request.args.get('search')
        print(search)
        r = requests.get('http://127.0.0.1:8000/estacionesbykm/?ciudad='+search)
        render_template('estacion_por_ciudad.html', estaciones=json.loads(r.text), ciudad=search)
    else:
        r = requests.get('http://127.0.0.1:8000/estaciones/')
        return render_template('principal.html', estaciones=json.loads(r.text))
主页的模板也很简单:

    <h2>Search</h2>
    <form method="GET">
        <input name="search" type="text" placeholder="Search city">
        <button name= "btn_search" type="submit">Search</button>
    </form>
</body>
</html>
搜索
搜寻
为什么表单总是让我空着,这有一个特殊的原因


非常感谢您的帮助。

我想您需要表单中的数据。当您使用GET请求时,在flask中,您应该通过以下代码访问它们

request.args['key']

当您处理POST请求时,您可以使用
reequest.form[]

哦,感谢它工作正常,所以args是用于获取方法和表单以进行POST的。