def login(): if request.method == 'POST': account = request.form.get('account') password = request.form.get('password') if not account: return render_template('admin/login.html', error='请输入用户名!', account=account) if not password: return render_template('admin/login.html', error='请输入密码!', account=account) user = User.query.filter(User.account == account).first() if user: if user.status == 0: if user.password == md5(password): login_user(user) return redirect(url_for('userRoute.adminIndex')) else: return render_template('admin/login.html', error='密码错误!', account=account) else: return render_template('admin/login.html', error='用户已冻结,请联系管理员!') else: return render_template('admin/login.html', error='该用户不存在!') return render_template('admin/login.html')
def user_modify_submit(): try: user_id = request.form.get('id') account = request.form.get('account') nickname = request.form.get('nickname') password = request.form.get('password') role = request.form.get('role') status = request.form.get('status') if user_id != '' and user_id != None: # 编辑 i = User.query.filter(User.id == user_id).update({ 'account': account, 'nickname': nickname, 'password': md5(password), 'role': role, 'status': status }) if i > 0: return Result('true', '用户修改成功!', None) else: return Result('false', '用户修改失败!', None) else: # 新增 user = User(account, nickname, password, role, status) db.session.add(user) db.session.commit() return Result('true', 'hahhaha', None) except Exception as err: return Result('false', err, None)
def bind(self, username, password): password = common.md5(password) user = UserModel.query.filter_by(username=username, password=password).first() # type: UserModel if user is not None: user.info.token = self.generate_token(user.username, user.info.number) db.session.add(user) db.session.commit() else: raise self.UserNotExistedException return user.info
def register(self, username, password, number): password = common.md5(password) if UserModel.query.filter_by(username=username).count() != 0: raise self.UserExistedException token = self.generate_token(username, number) user = UserModel(username=username, password=password, info=UserInfoModel(number=number, token=token)) db.session.add(user) db.session.commit() return user.info
def edit(self, id: int): item = UserModel.query.get(id) # type: UserModel if item is None: flash('用户不存在', 'danger') form = UserEditForm() if request.method == 'POST' and form.validate_on_submit(): item.username = form.username.data if form.password.data != '': item.password = common.md5(form.password.data) item.info.number = form.number.data db.session.add(item) db.session.commit() flash('编辑成功', 'success') else: form.username.data = item.username form.number.data = item.info.number return render_template('admin/user/edit.html', form=form)
def generate_token(username, number): t = '%s,%s,%d' % (username, number, time.time()) return common.md5(t)
def get_user(username, password): password = common.md5(password) user = UserModel.query.filter_by(username=username, password=password).first() # type: UserModel return user
def __init__(self, account, nickname, password, role, status): self.account = account self.nickname = nickname self.password = md5(password) self.role = role self.status = status