用flask編了一個用手機號注冊的后端,為什么輸入不同的手機號,mysql里總是出現2147483647,我已經把它改成str型別了
聽說mysql里能記錄的最大數是2147483647,所以我把它轉為str型別,可是無濟于事
class的代碼如下:phonenum我定義為str
class User(db.Model):
__tablename__="user"
id=db.Column(db.Integer,primary_key=True,nullable=False,autoincrement=True)
username=db.Column(db.String(50),nullable=False,unique=True)
phonenum=db.Column(db.String,nullable=False)
password=db.Column(db.String(100),nullable=False)
注冊的代碼如下:phonenum我也把它轉為str了
@app.route('/regist/',methods=['GET','POST'])
def regist():
if request.method=='GET':
return render_template('regist.html')
else:
username = request.form.get('username')
phonenum =str(request.form.get("phonenum"))
password1 = request.form.get("password1")
password2 = request.form.get("password2")
# 驗證手機是否被注冊過。query.filter是查詢的意思,原來在sql里學過了,忘了
# query.filter意思是查找User類里面,phonenum這個專案里有沒有==phonenum的
user = User.query.filter(User.phonenum == phonenum).first()
if user:
return "該手機號已注冊"
else:
if password1 != password2:
return '兩次輸入的密碼不正確'
else:
# 添加到資料庫中
user=User(phonenum=phonenum,username=username,password=password1)
db.session.add(user)
db.session.commit()
# 跳轉到登錄頁面
return redirect(url_for("login"))
然而用navicat看了mysql里記錄的資料,依然是2147483647
如圖
uj5u.com熱心網友回復:
創建表的時候要宣告字符型別char(11)uj5u.com熱心網友回復:
原來如此啊,多謝呀
uj5u.com熱心網友回復:
原來如此啊,多謝呀哈哈哈哈哈哈哈哈哈哈哈哈哈
uj5u.com熱心網友回復:
原來如此啊,多謝呀哈哈哈哈哈哈哈哈哈哈哈哈哈
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/127618.html
上一篇:rstudio打不開XLS檔案
下一篇:用Python設計一個商品類
