一、flask-script
from flask import Flask
from flask_script import Manager
from apps import create_app
app = create_app()
manager = Manager(app=app) #在app上报了个壳
@manager.command
def init():
print('初始化')
if __name__ == '__main__':
manager.run()
二、数据库
pip install pymysql ----提供驱动
pip install flask-sqlalchemy----->完成映射
pip install flask-migrate ------>实现映射
配置数据库
class Config:
ENV='development'
DEBUG=True
# mysql+pymysql://user:password@hostip:port/detabasename
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:root@127.0.0.1:3306/flaskday05'
class DevelopmentConfig(Config):
ENV = 'development'
class ProductionConfig(Config):
ENV='development'
DEBUG=False
步骤:
1.配置连接路径
2.创建包ext
from flask import Flask
import settings
from apps.user.view import user_bp
from ext import db
def create_app():
app =Flask(__name__,template_folder='../templates',static_folder='../static') #app是一个核心对象
app.config.from_object(settings) #加载配置
db.init_app(app) #将db对象与app进行了关联
#蓝图
app.register_blueprint(user_bp)
print(app.url_map)
return app
3.migrate
4.创建模型
module.py
模型就是类
class User(db.Model): -------->user表
from datetime import datetime
from ext import db
class User(db.Model):
#db.Column(类型,约束) 映射表中的列
#
'''
类型:
db.Interger int
db.String(15) varchar(15)
db.Datetime datetime
'''
id = db.Column(db.Integer,primary_key = True,autoincrement = True)
username = db.Column(db.String(15),nullable = False)
password = db.Column(db.String(12),nullable = False)
phone = db.Column(db.String(11),unique = True)
rdatetime = db.Column(db.DateTime,default = datetime.now)
def __str__(self):
return self.username
5.使用命令
a.敲黑板....
在app.py中导入模型