2013-10-18 22 views
0

我創建了一個用戶登錄功能。在這我匹配一個用戶名和密碼。但在這個唯一的用戶名進行比較,密碼比較不起作用。幫助我如何比較用戶名和密碼。 登錄功能: -如何在Flask Peewee中匹配密碼

@app.route('/loginpage', methods = ['GET' , 'POST' ]) 
def loginpage(): 
    if request.method == 'POST' and request.form['username']: 
     user = User.select().where(User.username == request.form['username']).get() 
     user.check_password(request.form['password']) 
     return redirect(url_for('homepage')) 
    else: 
     return render_template('login.html') 

自定義窗體: -

<form action=" " method="POST" class="form" > 
    <dl> 
     <dt>Username:</dt> 
     <dd><input type="text" name="username"></dd> 
     <dt>Password:</dt> 
     <dd><input type="password" name="password"></dd> 

     <dd><input type="submit" value="Login"> 
    </dl> 
    </form> 

回答

0

我解決使用登錄功能的代碼錯誤。

@app.route('/loginpage', methods = ['GET' , 'POST' ]) 
def loginpage(): 
    if request.method == 'POST' and request.form['username']: 
     user = User.select().where(User.username == request.form['username']).get() 
     if user.check_password(request.form['password']): 
      return redirect(url_for('homepage')) 
     else: 
      return 'invalid password' 

    else: 
     return render_template('login.html')