,所以我得到這個錯誤'NoneType'對象沒有屬性'username'?
AttributeError的: 'NoneType' 對象有沒有屬性 '用戶名'
任何建議,
Models.py
class User(db.Model):
__tablename__ = "users"
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True)
password = db.Column(db.String(20), unique=True)
def __init__(self, username, password):
self.username = username
self.password= bcrypt.generate_password_hash(password, 10)
def is_authenticated(self):
return True
def is_active(self):
return True
def is_anonymous(self):
return False
def get_id(self):
return (self.id)
def __repr__(self):
return '<User %r>' % self.username
Views.py
@app.route('/register', methods=['GET','POST'])
def register():
if request.method == 'GET':
return render_template('register.html')
user = User(request.form['username'] , request.form['password'])
username = request.form['username']
password = request.form['password']
storeduser = User.query.filter_by(username=username).first()
if storeduser.username is not None and storeduser.username == request.form['username']:
return 'User already Exist !'
else:
db.session.add(user)
db.session.commit()
flash('User successfully registered')
return redirect(url_for('index'))
如果客戶端用戶名與當前用戶名輸出匹配,那麼它們幾乎相同 現有用戶註冊,如果不註冊用戶名。
IM指我在我的模型的用戶名(如果你想知道)
'User.query.filter_by(username = username).first()'查詢返回'None',表示找不到用戶。 –
我有點不明白,因爲代碼能夠渲染 用戶已經存在,當我把相同的用戶名, 我怎麼做它添加一個用戶名和重定向到索引頁? –