目錄結(jié)構(gòu):
flasks #項(xiàng)目文件夾名稱(chēng)
|--------apps #應(yīng)用文件夾
|--------admin.py #應(yīng)用配置文件 數(shù)據(jù)模型文件
|--------static #靜態(tài)文件
|--------templates #網(wǎng)頁(yè)文件
|--------views #應(yīng)用視圖文件夾
|--------admin.py #視圖配置文件
|--------manage.py #應(yīng)用啟動(dòng)文件
|--------upd.py #測(cè)試環(huán)境是用于更新數(shù)據(jù)庫(kù)的文件
內(nèi)容說(shuō)明:
#apps/admin.py
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import pymysql
db = SQLAlchemy()
#####################################################
######## 定義數(shù)據(jù)模型
class User(db.Model):
__tablename__ = 'user'
id=db.Column(db.Integer,primary_key=True)
name=db.Column(db.String(32))
pas=db.Column(db.String(32))
passs=db.Column(db.String(32))
######## 定義結(jié)束
#####################################################
def create_app():
app=Flask(__name__)
#數(shù)據(jù)庫(kù)配置
SDU='mysql+pymysql://root:160010@127.0.0.1:3306/ccc'
app.config['SQLALCHEMY_DATABASE_URI']=SDU
return app
#views/admin.py
from flask import Blueprint
from apps.admin import *
admin=Blueprint('admin',__name__)
@admin.route('/')
def index():
return 'admin_index'
@admin.route('/show')
def show():
return 'admin_show'
manafe.py
from apps.admin import create_app
from flask_migrate import Migrate,MigrateCommand
from flask_script import Manager
from views.admin import *
app=create_app()
app.register_blueprint(admin,url_perfil='/')
migrate=Migrate(app,db)
manager=Manager(app)
manager.add_command('db',MigrateCommand)
if __name__ == '__main__':
manager.run()
#upd.py
from manage import manager
if __name__ == '__main__':
manager.run()
控制臺(tái)輸入
python upd.py db init 初始化migrate需要的環(huán)境
python upd.py db migrate 生成數(shù)據(jù)遷移腳本
python upd.py db upgrade 更新數(shù)據(jù)庫(kù)表的結(jié)構(gòu)