def signup(): """signup page""" if current_user.is_authenticated: return redirect(f'/id{current_user.id}') form = AuthorizeForm() if form.validate_on_submit(): # if password and control password are equal # and username are not taken, add the user to data base if form.password.data == form.password_control.data: if not db_sess.query(User).filter( User.username == form.username.data).first(): user = User() user.username = form.username.data user.create_password_hash(form.password.data) db_sess.add(user) db_sess.commit() return redirect('/login') return render_template('signup.html', form=form, message="Такое имя пользователя уже занято") return render_template('signup.html', form=form, message="Пароли не совпадают") return render_template('signup.html', form=form, message="") # do not remove 'message' argument here
def post(self): """adding new user (if data is correct) by post request e.g post('http://localhost:5000/api/users', json={'username': '******', 'password': '******'})""" args = parser.parse_args() session = db_session.create_session() user = User() user.username = args['username'] if len(args['password']) <= 6: return jsonify({'success': 'Bad password'}) user.create_password_hash(args['password']) session.add(user) session.commit() return jsonify({'success': 'OK'})