【发布时间】:2021-09-07 17:50:49
【问题描述】:
我有一个按预期工作的基本注册/登录。我遇到的问题是,我不知道如何检查用户名是否已在使用,然后闪现一条消息。
我的路线
@app.route("/signup", methods=['GET', 'POST'])
def signup():
form = RegisterForm()
if form.validate_on_submit():
hashed_password = generate_password_hash(form.password.data, method='sha256')
new_user = User(username=form.userName.data, email=form.email.data, password=hashed_password)
db.session.add(new_user)
db.session.commit()
flash("Registration successful...please log in!")
return redirect(url_for('login'))
return render_template("signup.html", form=form)
我的用户模型
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(20), unique=True)
email = db.Column(db.String(50), unique=True)
password = db.Column(db.String(80))
我的 HTML(错误 div)
{% for field, errors in form.errors.items() %}
<div class="alert alert-error">
{{ form[field].label }}: {{ ', '.join(errors) }}
</div>
{% endfor %}
【问题讨论】:
标签: flask flask-sqlalchemy wtforms