我正试图使用flask制作一个web应用程序,但在重定向到app.py文件中的另一个页面/路由时遇到问题。我还为另一个(登录(页面设置了一个HTML模板。
这是我在主应用程序.py中的代码:
@app.route('/', methods=['GET', 'POST'])
if request.method == 'GET':
pass
if request.method == 'POST':
pass
return render_template('index.html', passable=passable)
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
name = request.form.get('username')
post = request.form.get('password')
# still need to complete
return render_template('login.html')
我已经导入了所有相关模块(我想(。
在我的Index.html文件中,我有一个按钮,我希望它重定向到我的login.html页面。目前我正在做这样的事情:
<button type="submit" onclick='{{Flask.redirect(url_for(login))}}' value="editor">
每当我(在本地(启动页面时,我都会收到这个错误。jinja2.exceptions.UndefinedErrorjinja2.exceptions.UndefinedError:"Flask"是未定义的
如何使我的按钮重定向到";登录";烧瓶路线?
如果您希望表单提交到不同的路由,您只需执行<form action="{{ url_for('app.login') }}">
即可。
如果您只想放置一个指向页面的链接,请使用<a>
标记。
如果您想处理请求然后重定向,只需使用flask提供的redirect
函数即可。
<a href="{{url_for(app.login)}}" >Login</a>