输入了用户名和密码,登录不成功,老是提示this field is required
来源:10-1 鱼豆
慕桂英5369657
2019-04-10

from app.models.base import db,Base
from app.models.user import User
from . import web
from flask import render_template, request, redirect, url_for, flash
from app.forms.auth import RegisterForm, LoginForm
from flask_login import login_user, logout_user
from werkzeug.security import generate_password_hash
author = ‘hpa’
@web.route(’/register’, methods=[‘GET’, ‘POST’])
def register():
form = RegisterForm(request.form)
if request.method == ‘POST’ and form.validate():
with db.auto_commit():
user = User()
user.set_attrs(form.data)
db.session.add(user)
# db.session.commit()
return redirect(url_for(‘web.login’))
return render_template(‘auth/register.html’, form=form)
@web.route(’/login’, methods=[‘GET’, ‘POST’])
def login():
form = LoginForm(request.form)
if request.method == ‘POST’ and form.validate():
user = User.query.filter_by(email=form.email.data).first()
if user and user.check_password(form.password.data):
login_user(user, remember=True)
next = request.args.get(‘next’)
if not next or not next.startswitch(’/’):
next = url_for(‘web.index’)
return redirect(next)
else:
flash(‘账号不存在或密码错误’)
return render_template(‘auth/login.html’, form=form)
@web.route(’/reset/password’, methods=[‘GET’, ‘POST’])
def forget_password_request():
pass
@web.route(’/reset/password/’, methods=[‘GET’, ‘POST’])
def forget_password(token):
pass
@web.route(’/change/password’, methods=[‘GET’, ‘POST’])
def change_password():
pass
@web.route(’/logout’)
def logout():
logout_user()
return redirect(url_for(‘web.index’))
2回答
-
慕慕4401115
2021-11-25
你校验器多校验了一个nickname 字段
00 -
7七月
2019-04-11
这个自己调试一下吧,上面这代码,我真看不出来问题。只能调试,分析问题了。
00
相似问题