1.原生的表單登錄html
html文件:python
視圖函數:mysql
ps:flash的使用,須要經過混淆加密,app.config["SECRET_KEY"] = 'DEV'sql
2.使用Flask-WTF定義表單顯示數據庫
<1>定義表單類:flask
<2>視圖函數定義app
<3>定義模板函數
3.使用Flask-WTF進行表單邏輯驗證加密
<1>定義表單類spa
<2>定義視圖函數<3>定義模板
3.Flask-SQLAlchemy的配置和使用
import pymysql
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
pymysql.install_as_MySQLdb()
app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = 'mysql://Juliet:123456@127.0.0.1/flask_sql_demo'
#跟蹤數據庫的修改--->不建議開啓,將來版本會移除
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
''' 兩張表(管理員/普通用戶) 用戶(角色ID) '''
# 數據庫的模型,須要繼承db.Model
class Role(db.Model):
'''角色類'''
# 定義表名
__tablename__ = 'roles'
# 定義字段
# db.Column表示一個字段
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(16),unique=True)
class User(db.Model):
'''用戶類'''
__tablename__ = 'users'
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(16),unique=True)
# db.ForeignKey('roles.id'):表示外鍵
role_id = db.Column(db.Integer,db.ForeignKey('roles.id'))
@app.route('/')
def index():
return "hello world!!"
if __name__ == '__main__':
# 刪除表
db.drop_all()
# 建立表
db.create_all()
app.run(debug=True)
複製代碼
4.數據庫的增刪改