url_for函数不仅可以在flask-python中使用,也可以在基于jinja2的html中直接使用!
#这里的web.book_search是蓝图web下面的视图函数book_search
//基于jinja2的html代码,选择视图函数web.book_search作为端点获得相对路径!
<form class="form-inline" action="{{ url_for('web.book_search') }}" method="get"></form>
#flask导入js文件,根据static/3rd/jquery-3.2.1.min.js获取相对路径!
<script src="{{ url_for('static', filename='3rd/jquery-3.2.1.min.js') }}"></script>
@web.route('/register', methods=['GET', 'POST'])
def register():
if request.method == "POST":
reg_form = RegisterForm(request.form)
var_bool = reg_form.validate()
if var_bool:
#校验成功后的用户注册数据放入RegisterViewModel中,并添加到数据库中!!!
RegisterViewModel(reg_form.data)
#根据视图函数web.login获取重定向跳转路径(视图函数的路径)
return redirect(url_for("web.login"))
else:
flash("注册信息有误,请重新输入...")
flash(reg_form.errors)
return render_template("auth/register.html", form={"data": reg_form.data})
else:
return render_template("auth/register.html", form={"data": {}})