有没有人使用Flask-Security扩展名进行身份验证?如何获得注册视图?
Flask-Security
http://packages.python.org/Flask-Security/customizing.html
我指的是上面的链接。
@app.route('/register', methods=['GET']) def register(): return render_template('security/register_user.html')
我不想扩展默认类,我只想将默认注册视图包装在我的网站布局中,所以我这样做了。
{% extends "layout.html" %} {% block title %}upload{% endblock %} {% block body %} {% from "security/_macros.html" import render_field_with_errors, render_field %} {% include "security/_messages.html" %} <h1>Register</h1> <form action="{{ url_for_security('register') }}" method="POST" name="register_user_form"> {{ register_user_form.hidden_tag() }} {{ render_field_with_errors(register_user_form.email) }} {{ render_field_with_errors(register_user_form.password) }} {% if register_user_form.password_confirm %} {{ render_field_with_errors(register_user_form.password_confirm) }} {% endif %} {{ render_field(register_user_form.submit) }} </form> {% include "security/_menu.html" %} {% endblock %}
我收到以下错误?
werkzeug.routing.BuildError BuildError: ('security.register', {}, None)
你无需创建视图。Flask-Security中包含一个默认值。你只需要在flask应用程序配置中启用它:
app = Flask(__name__) app.config['SECURITY_REGISTERABLE'] = True
这样,“ / register”路由应该起作用。 如果需要,还有另一个配置值可以更改URL:
app.config['SECURITY_REGISTER_URL'] = '/create_account'