數據庫創建參考: https://www.cnblogs.com/kaibindirver/p/12650465.html
數據庫插入數據
前端頁面
<form action="{{ url_for('web.register') }}" method="post">
<input id="nickname" name="nickname" type="text">
<input id="email" name="email" type="text">
<input id="password" name="password" type="password">
<input id="btn-submit" type="submit" value="注冊">
</form>
視圖函數文件
from app.froms.auth import RegisterForm
@web.route('/register', methods=['GET', 'POST'])
def register():
form=RegisterForm(request.form) #獲取前端 post過來的參數 格式是 [(name,lucax) , (password,123456)]
if request.method =="POST" :
user=User() 調用創建數據庫 的類
user.set_attrs(form.data) 給User()的變量分別賦值
db.session.add(user) 加入緩沖區
db.session.commit() 添加入數據庫
return render_template("auth/register.html")
def set_attrs(self,attrs_dict):
for key,value in attrs_dict.items():
if hasattr(self,key) and key != "id":
setattr(self,key,value)
user數據庫模型結構
RegisterForm文件
base.py文件(注意 這里有個 繼承小技巧,讓所有數據庫表都有status字段)