API重定向始终在“用户已存在”,SQlite3上

时间:2015-12-22 05:33:39

标签: python-2.7 flask sqlite

这是我的代码:

@app.route('/signUp',methods=['POST','GET'])
def signUp():
    try:
        _name = request.form['inputName']
        _email = request.form['inputEmail']
        _password = request.form['inputPassword']
        db = sqlite3.connect("BucketList.db")
        cursor = db.cursor()
        _hashed_password = generate_password_hash(_password)
        cursor.execute("Select * from tbl_user where user_username = ?", (_email, ))
        data = cursor.fetchone()
        if data:
            return render_template('error.html',error = 'User Already Exists.')
        else:
            if not data:
                cursor.execute('''INSERT INTO tbl_user(user_name, user_username, user_password)
                        VALUES(?,?,?)''', (_name, _email, _hashed_password))  
                db.commit()
        return render_template('regok.html',regok = 'User created successfully !')
    except Exception as e:
        return render_template('error.html',error = str(e))
    finally:
         db.close()

如果我尝试注册并且用户已经存在,我会收到“用户已经存在”,这是正常的,但是当我尝试注册并且用户不存在时,我在“用户已存在”上有相同的重定向用户是在数据库中创建的,我可以登录。

如何解决?例如:
用户存在=重定向用户存在
用户不存在 - 重定向用户创建成功。

0 个答案:

没有答案