示例#1
0
def register(request):
    if request.method == 'GET':

        return render(request, 'register.html')

    elif request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('pwd')
        cpassword = request.POST.get('cpwd')
        email = request.POST.get('email')
        if not (password == cpassword):  #两次密码不正确
            return render(request, 'register.html')
    #如果没有异常存入数据库中
        try:
            user = User()
            user.username = username
            user.password = generate_password(cpassword)
            user.email = email
            user.save()
            token = generate_token()
            cache.set(token, user.id, 60 * 60 * 24 * 20)
            request.session['token'] = token
            return redirect('shop:index')
        except:
            return render(request, 'register.html')
示例#2
0
def register():
    if session.get('is_auth'):
        redirect('/')

    form = RegistrationForm()
    if request.method == 'POST':
        if not form.validate_on_submit():
            return render_template('register.html', form=form)

        user = User()
        email = request.form.get('email')
        user.mail = email
        user.password = request.form.get('password')
        db.session.add(user)
        db.session.commit()
        # print(db.session.query(User).filter(User.mail == email).scalar().id)
        # сразу авторизуем пользователя
        session['is_auth'] = True
        session['id'] = db.session.query(
            User.id).filter(User.mail == email).scalar()
        session['username'] = email
        return redirect('/account/')

    return render_template('register.html', form=form)