예제 #1
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Sing up',
                                   form=form,
                                   message="Passwords not matching")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter((User.email == form.email.data) | (
                User.username == form.username.data)).first():
            return render_template('register.html',
                                   title='Sing up',
                                   form=form,
                                   message="Username/email exists")
        # noinspection PyArgumentList
        user = User(
            username=form.username.data.lower(),
            email=form.email.data.lower(),
            first_name=form.first_name.data,
            last_name=form.last_name.data,
            about=form.about.data,
        )
        user.create_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Sing up', form=form)
예제 #2
0
def edituser(user_id):
    form = RegisterForm()

    if request.method == "GET":
        db_sess = db_session.create_session()
        fun = db_sess.query(User).filter(User.id == current_user.id).first()
        if fun:
            form.email.data = fun.email
            form.surname.data = fun.surname
            form.name.data = fun.name
            form.age.data = fun.age
            form.about.data = fun.about
        else:
            abort(404)
    if form.validate_on_submit():
        db_sess = db_session.create_session()
        fun = db_sess.query(User).filter(User.id == current_user.id).first()
        if current_user.id in admins:
            fun = db_sess.query(Fun).filter(Fun.id == id).first()
        if fun:
            fun.email = form.email.data
            fun.surname = form.surname.data
            fun.name = form.name.data
            fun.age = form.age.data
            fun.about = form.about.data
            db_sess.commit()
            return redirect('/')
        else:
            abort(404)
    return render_template('register.html',
                           title='Редактирование профиля',
                           form=form,
                           admins=admins)
예제 #3
0
    def test_validate_user_already_registered(self, user):
        """Enter username that is already registered."""
        form = RegisterForm(username=user.username, email='*****@*****.**',
                            password='******', confirm='example')

        assert form.validate() is False
        assert 'Username already registered' in form.username.errors
예제 #4
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data, email=form.email.data)
        user.set_password(form.password.data)

        db_sess.add(user)
        db_sess.commit()

        id_for_basket = db_sess.query(User).filter(
            User.name == form.name.data).first().id

        basket = Basket(user_id=id_for_basket, items_id='')

        db_sess.add(basket)
        db_sess.commit()

        print('registered')
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #5
0
def reqister():
    global code
    form = RegisterForm()
    print(form.validate_on_submit())
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data,
                    surname=form.surname.data,
                    age=form.age.data,
                    email=form.email.data,
                    about=form.about.data)
        user.set_password(form.password.data)
        user.tab_about()
        db_sess.add(user)
        db_sess.commit()
        f = request.files['files']
        f.save(f"static/images/users_image/{user.id}.jpg")
        db_sess = db_session.create_session()
        user = db_sess.query(User).get(user.id)
        return redirect(f'/login')
    print("igushufghbdusfhogubd")
    return render_template('register.html', title='Регистрация', form=form)
예제 #6
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        try:
            if float(form.password.data.replace(' ', '')) > 0 and \
                    float(form.email.data.replace(' ', '')) > 0:
                return render_template(
                    'register.html',
                    title='Калькулятор',
                    form=form,
                    message=("Ваш результат: " +
                             str(0.5 * float(form.password.data) *
                                 float(form.email.data))))
            elif float(form.password.data.replace(' ', '')) <= 0 or \
                    float(form.email.data.replace(' ', '')) <= 0:
                return render_template(
                    'register.html',
                    title='Калькулятор',
                    form=form,
                    message="Один или несколько параметров равны 0 "
                    "или отрицательны")
        except ValueError:
            return render_template(
                'register.html',
                title='Регистрация',
                form=form,
                message="Не указан 1 или несколько параметров")

    return render_template('register.html', title='Через 2 катета', form=form)
예제 #7
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data,
                    surname=form.surname.data,
                    age=form.age.data,
                    position=form.age.data,
                    speciality=form.speciality.data,
                    email=form.email.data,
                    password=form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    print("igushufghbdusfhogubd")
    return render_template('register.html', title='Регистрация', form=form)
예제 #8
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data,
                    email=form.email.data,
                    about=form.about.data,
                    country=form.country.data,
                    city=form.city.data,
                    building=form.building.data,
                    district=form.district.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Registration', form=form)
예제 #9
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        zodiac = zodiac_serch(form.date_birth.data)
        user = User(name=form.name.data,
                    surname=form.surname.data,
                    email=form.email.data,
                    sex=form.sex.data,
                    zodiac=zodiac,
                    date_birth=form.date_birth.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #10
0
def reqister():
    db_sess = db_session.create_session()
    form = RegisterForm()
    form.country_from.choices = [(country.id, country.name)
                                 for country in db_sess.query(Country).all()]
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data,
                    surname=form.surname.data,
                    email=form.email.data,
                    date_of_birth=form.date_of_birth.data,
                    city_from=form.city_from.data,
                    country_from=form.country_from.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #11
0
파일: edit_user.py 프로젝트: zif108/Web
def edit_news(id):
    form = RegisterForm()
    print('asd')
    if request.method == "GET":
        db_sess = db_session.create_session()
        user = db_sess.query(User).filter(User.id == id).first()
        print(1)
        if user:
            form.name.data = user.name
            form.about.data = user.about
            form.email.data = user.email
            form.password.data = user.hashed_password
            form.password_again.data = user.hashed_password
        else:
            abort(404)
    if form.validate_on_submit():
        db_sess = db_session.create_session()
        user = db_sess.query(User).filter(User.id == id).first()
        print(2)
        if user:
            user.name = form.name.data
            user.about = form.about.data
            user.email = form.email.data
            user.password = form.password.data

            db_sess.commit()
            return redirect('/account')
        else:
            abort(404)
    return render_template('edit_user.html',
                           title='Редактирование профиля',
                           form=form)
예제 #12
0
def registration():
    if request.method == "GET":
        if not current_user.is_authenticated:
            form = RegisterForm()
            return render_template('registration.html',
                                   title='Регистрация',
                                   form=form)
        return redirect('/profile')
    elif request.method == "POST":
        form = RegisterForm()
        if form.validate_on_submit():
            if form.password.data != form.password_again.data:
                return render_template('registration.html',
                                       form=form,
                                       message="Пароли не совпадают")
            db_sess = db_session.create_session()
            if db_sess.query(User).filter(
                    User.email == form.email.data).first():
                return render_template('registration.html',
                                       form=form,
                                       message="Такой пользователь уже есть")
            user = User()
            user.name = form.name.data
            user.email = form.email.data
            user.surname = form.surname.data
            user.set_password(form.password.data)
            db_sess.add(user)
            db_sess.commit()
            login_user(user)
            return redirect('/profile')
        return redirect('/login')
예제 #13
0
def register():
    form = RegisterForm()
    if form.is_submitted():
        if form.validate_on_submit():
            if User.query.filter(User.name == form.name.data).count() > 0:
                flash(
                    "That name is already in use, please choose a different name."
                )
                render_template("register.html", form=form)
            if User.query.filter(User.email == form.email.data).count() > 0:
                flash(
                    "That email is already in use. Are you already registered?"
                )
                render_template("register.html", form=form)
            u = User(email=form.email.data,
                     password=form.password.data,
                     name=form.name.data,
                     user_type=User.DEVELOPER)
            db.session.add(u)
            db.session.commit()
            flash('Registration successful!')
            return redirect(url_for("index"))
        else:
            flash("There was an error with your submission")
            return render_template("register.html", form=form)
    return render_template("register.html", form=form)
예제 #14
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(Users).filter(Users.email == form.email.data).first():
            return render_template(
                'register.html',
                title='Регистрация',
                form=form,
                message="Пользователь с такой почтой уже есть")

        if db_sess.query(Users).filter(Users.login == form.login.data).first():
            return render_template(
                'register.html',
                title='Регистрация',
                form=form,
                message="Пользователь с таким логином уже есть")
        user = Users(name=form.name.data,
                     login=form.login.data,
                     email=form.email.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #15
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        if db_sess.query(User).filter(User.name == form.name.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть (имя)")
        user = User(name=form.name.data,
                    email=form.email.data,
                    about=form.about.data,
                    instrument=form.instrument.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        login_user(user)
        return redirect('/')
    return render_template('register.html', title='Регистрация', form=form)
예제 #16
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_session.global_init('db/mars_explorer.db')
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(surname=form.surname.data,
                    name=form.name.data,
                    email=form.email.data,
                    age=form.age.data,
                    position=form.position.data,
                    speciality=form.speciality.data,
                    address=form.address.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        # return redirect('/login')
        return 'Форма отправлена'
    return render_template('register.html', title='Регистрация', form=form)
예제 #17
0
def edit_user(user_id):
    form = RegisterForm()
    if request.method == "GET":
        db_sess = db_session.create_session()
        user = db_sess.query(User).filter(User.id == current_user.id).first()
        if user:
            form.name.data = user.name
            form.surname.data = user.surname
            form.age.data = user.age
            form.email.data = user.email
            form.phone_number.data = user.phone_number
        else:
            abort(404)
    if form.validate_on_submit():
        db_sess = db_session.create_session()
        user = db_sess.query(User).filter(User.id == current_user.id).first()
        if user:
            if request.files['file'].filename:
                with open(f"static/img/{request.files['file'].filename}", "wb") as file:
                    f = request.files.get('file').read()
                    file.write(f)
                    file.close()
                    current_user.photo = request.files['file'].filename
            user.name = form.name.data
            user.surname = form.surname.data
            user.age = form.age.data
            user.email = form.email.data
            user.phone_number = form.phone_number.data
            db_sess.commit()
            return redirect('/')
        else:
            abort(404)
    return render_template('register.html', title='Регистрация', form=form, cities=cities)
예제 #18
0
def register():
    form = RegisterForm()
    title = "Регистрация"
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template("register.html", title=title, form=form,
                                   message="Пароли не совпадают")
        session = db_session.create_session()
        if session.query(User).filter(User.email == form.email.data).first():
            return render_template("register.html", title=title, form=form,
                                   message="Такой пользователь уже существует")
        user = User(
            email=form.email.data,
            surname=form.surname.data,
            name=form.name.data,
            age=form.age.data,
            position=form.position.data,
            speciality=form.speciality.data,
            address=form.address.data,
            city_from=form.city_from.data
        )
        user.set_password(form.password.data)
        session.add(user)
        session.commit()
        return redirect("/login")
    return render_template("register.html", title=title, form=form)
예제 #19
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   reg=True,
                                   message="Email занят")
        user = User()
        user.email = form.email.data
        user.surname = form.surname.data
        user.name = form.name.data
        user.about = form.about.data
        user.set_password(form.password.data)

        if form.icon.data:
            # если прикреплённый файл является изображением
            if form.icon.data.content_type.startswith('image'):
                user.icon = f'user_{uuid.uuid4().hex}.jpg'
                form.icon.data.save(f'static/img/users/{user.icon}')
            else:
                return render_template('register.html',
                                       title='Регистрация',
                                       form=form,
                                       reg=True,
                                       message="Надо прекреплять изображение")
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html',
                           title='Регистрация',
                           reg=True,
                           form=form)
예제 #20
0
    def test_validate_email_already_registered(self, user):
        """Enter email that is already registered."""
        form = RegisterForm(username='******', email=user.email,
                            password='******', confirm='example')

        assert form.validate() is False
        assert 'Email already registered' in form.email.errors
def reqister():
    if session.get('user_id', -1) == -1:
        form = RegisterForm()
        if form.validate_on_submit():
            if form.password.data != form.password_again.data:
                return render_template('register.html', title='Регистрация',
                                       form=form,
                                       message="Пароли не совпадают")
            db_sess = db_session.create_session()
            if db_sess.query(User).filter(User.email == form.email.data).first():
                return render_template('register.html', title='Регистрация',
                                       form=form,
                                       message="Такой пользователь уже есть")
            user = User(
                name=form.name.data,
                email=form.email.data,
                phone=form.phone.data,
                about=form.about.data,
                birth=form.birth.data
            )
            user.set_password(form.password.data)
            db_sess.add(user)
            db_sess.commit()
            return redirect('/login')
        if session.get('user_id', -1) != -1:
            username = db_sess.query(User).filter(User.id == session.get('user_id')).first().name
        else:
            username = '******'
        return render_template('register.html', title='Регистрация', form=form, username=username)
    else:
        return "<h1>You can't register new user while logged in</h1>"
예제 #22
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация | Teachers-Tracker',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(Teacher).filter(
                Teacher.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация | Teachers-Tracker',
                                   form=form,
                                   message="Такой пользователь уже есть")
        teacher = Teacher()
        teacher.surname = form.surname.data
        teacher.name = form.name.data
        teacher.middle_name = form.middle_name.data
        teacher.age = form.age.data
        teacher.address = form.address.data
        teacher.phone = form.phone.data
        teacher.email = form.email.data
        teacher.education = form.education.data
        teacher.set_password(form.password.data)
        db_sess.add(teacher)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html',
                           title='Регистрация | Teachers-Tracker',
                           form=form)
예제 #23
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html', title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html', title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User()
        user.surname = form.surname.data
        user.name = form.name.data
        user.age = form.age.data
        user.position = form.position.data
        user.speciality = form.speciality.data
        user.address = form.address.data
        user.email = form.email.data
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/')
    return render_template('register.html', title='Регистрация', form=form)
예제 #24
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")

        if (form.password.data != '' and policy.test(form.password.data) != []
            ) or form.password.data.upper() == form.password.data:
            error = 'Слабый пароль. Длина > 8. Необходимо хотя бы 2 заглавные буквы(но не все) и 2 цифры'
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   errors=error)
        user = User(name=form.name.data,
                    email=form.email.data,
                    about=form.about.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #25
0
def reqister():
    form = RegisterForm()
    if request.method == "POST":
        d, m, y = request.form["day"], request.form["month"], request.form[
            "year"]
        if not data_check(d, m, y):
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Не правильная дата рождения")
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(name=form.name.data,
                    email=form.email.data,
                    about=form.about.data,
                    birth_day_date=f"{d}.{m}.{y}")
        save(form.name.data, form.email.data, form.password.data, "reg")
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()

        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #26
0
def reqister():

    if current_user.is_authenticated:
        return redirect(url_for('index'))

    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(
            name=form.name.data,
            email=form.email.data,
            about=form.about.data,
        )
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #27
0
def reqister():
    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Такой пользователь уже есть")
        if db_sess.query(User).filter(User.tg == form.tg.data).first():
            return render_template('register.html',
                                   title='Регистрация',
                                   form=form,
                                   message="Данный телеграм уже используется")
        user = User(name=form.name.data,
                    email=form.email.data,
                    about=form.about.data,
                    tg=form.tg.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', title='Регистрация', form=form)
예제 #28
0
def reqister():
	form = RegisterForm()
	if form.validate_on_submit():
		if form.password.data != form.password_again.data:
			return render_template('register.html', title='Registration',
								   form=form,
								   message="Passwords does not match.")
		db_sess = create_session()
		if db_sess.query(User).filter(User.email == form.email.data).first():
			return render_template('register.html', title='Registration',
								   form=form,
								   message="User already exist.")
		user = User(
			surname = form.surname.data,
			name = form.name.data,
			age = form.age.data,
			position = form.position.data,
			speciality = form.speciality.data,
			address = form.address.data,
			email = form.email.data,
		)
		user.set_password(form.password.data)

		db_sess.add(user)
		db_sess.commit()
		return redirect('/login')

	return make_response(render_template('register.html', title="Регистрация", form=form))
예제 #29
0
def reqister():
    params = {}
    params["title"] = "Регистрация"
    params["static_css"] = url_for('static', filename="css/")
    params["static_img"] = url_for('static', filename="img/")

    form = RegisterForm()
    if form.validate_on_submit():
        if form.password.data != form.password_again.data:
            return render_template('register.html',
                                   **params,
                                   form=form,
                                   message="Пароли не совпадают")
        db_sess = db_session.create_session()
        if db_sess.query(User).filter(User.email == form.email.data).first():
            return render_template('register.html',
                                   **params,
                                   form=form,
                                   message="Такой пользователь уже есть")
        user = User(surname=form.surname.data,
                    name=form.name.data,
                    email=form.email.data,
                    age=form.age.data,
                    position=form.position.data,
                    speciality=form.speciality.data,
                    address=form.address.data)
        user.set_password(form.password.data)
        db_sess.add(user)
        db_sess.commit()
        return redirect('/login')
    return render_template('register.html', **params, form=form)
예제 #30
0
    def post(self):
        # 获取用户传过来的数据
        data = request.json

        # 验证参数有效性
        # RequestParse: 验证参数类型 => 弱
        # wtforms:更灵活,参数类型、参数值... => 推荐!!
        # 构建表单 => 设置参数的要求 => data与表单绑定 => 验证数据有效性
        form = RegisterForm(data=data)
        if form.validate():

            # 注意: form.email.data
            UserProfile.create_user(
                user_profile_email=form.email.data,
                user_profile_name=form.username.data,
                password=form.password.data,
                user_profile_mobile=form.phone.data,
                user_height=form.height.data,
                user_weight=form.weight.data,
                user_age=form.age.data,
            )
            user = UserProfile.query.filter_by(
                user_profile_email=data.get("email")).first()
            result = user_schema.dump(user)
            # 返回结果
            return generate_response(data=result)
        else:
            result = form.errors
            raise FormValidateException(message=result)
예제 #31
0
파일: register.py 프로젝트: platipy/Inspire
def register():
    form = RegisterForm()
    if form.is_submitted():
        if form.validate_on_submit():
            if User.query.filter(User.name == form.name.data).count() > 0:
                flash("That name is already in use, please choose a different name that students will recognize as you.")
                render_template("register.html", form=form)
            if User.query.filter(User.email == form.email.data).count() > 0:
                flash("That email is already in use. Are you already registered?")
                render_template("register.html", form=form)    
            u = User(email=form.email.data, 
                              password=form.password.data, 
                              name=form.name.data, 
                              user_type=User.TEACHER)
            db.session.add(u)
            db.session.commit()
            flash('Registration successful!')
            return redirect(url_for("index"))
        else:
            flash("There was an error with your submission")
            return render_template("register.html", form=form)
    return render_template("register.html", form=form)