【发布时间】:2014-03-19 04:50:53
【问题描述】:
四处搜索/修补无济于事。
我使用的是flask,mongoengine,mongodb 2.4版。
我正在尝试查询我的收藏之一(帖子,特别是通过标签)。
这些是我的路线:
@notes_app.route('/search', methods= ["post"])
@login_required
def search():
query = request.form.get('query')
return redirect(url_for('search_results', query=query)
@notes_app.route('/search_results/<query>', methods=["post"])
@login_required
def search_results(query):
posts = models.Post.objects(tag=query)
return render_template('search_results.html', posts=posts)
这是我在 index.html 中的搜索框
<form action='/search' method="post">
<p><input type="text" name="query" value="test"></p>
<p><input type="submit" value="Search"></p>
<br />
</form>
我的回溯:
File "notes.py", line 75, in search
return redirect(url_for('search_results', query=query))
File "python2.7/site-packages/flask/helpers.py", line 312, in url_for
return appctx.app.handle_url_build_error(error, endpoint, values)
File "python2.7/site-packages/werkzeug/routing.py", line 1620, in build
raise BuildError(endpoint, values, method)
BuildError: ('search_results', {'query': u'coding'}, None)
非常感谢任何建议,谢谢!
【问题讨论】:
-
notes_app是Flask或Blueprint的实例吗? -
@dim 蓝图,非常类似于link
标签: flask mongoengine