所以我在这里做的是尝试让用户键入一个关键字,然后使用该输入来自定义某个搜索查询,然后显示结果。
我想附加该输入并使其在函数内可读,我已尝试制作第二个函数来获取输入然后在其他函数内调用它,但这似乎不起作用。
这是我的烧瓶代码
@app.route('/')
def hello_world():
keyword = 'KEYWORD' **I need to make this an input by the user**
url = ('https://ajax.googleapis.com/ajax/services/search/news?v=1.0&q='+ keyword + '&rsz=8')
response = requests.get(url)
articles = response.json()
return render_template('index.html', articles = articles, enumerate=enumerate)
@app.route('/', methods = ['POST'])
def form():
get_keyword = request.form['keyword']
return get_keyword
if __name__ == '__main__':
app.run(debug=True)
这是我的index.html
<form method="post" action="/">
<input type="text" name="keyword">
</form>
答案 0 :(得分:0)
@app.route('/', methods = ['POST'])
def hello_world():
keyword = request.form['keyword']
url = ('https://ajax.googleapis.com/ajax/services/search/news?v=1.0&q='+ keyword + '&rsz=8')
response = requests.get(url)
articles = response.json()
return render_template('index.html', articles = articles, enumerate=enumerate)
这应该可以解决您的问题。你需要制作你的第一个app.route一个帖子请求,这个请求的内部只需要从这里请求。不需要额外的帖子功能。
这是来自flask文档的一个例子。它是不同的,但使用完全相同的逻辑,将帮助您了解您做错了什么。 http://flask.pocoo.org/docs/0.10/tutorial/views/#tutorial-views