Flask框架创建项目初期总结

创建项目虚拟环境及安装相关依赖

创建项目在项目内打开设置
第一步
Flask框架创建项目初期总结_第1张图片
第二步
Flask框架创建项目初期总结_第2张图片
打开项目终端查看虚拟环境是否成功
如果没有成功则需要手动开启
Flask框架创建项目初期总结_第3张图片
虚拟环境配置好后要安装相关依赖
讲有含有依赖名称的文件放到项目内
然后打开项目终端进行安装
安装好之后可以输入 pip list查看一下是否全部安装
Flask框架创建项目初期总结_第4张图片

创建flask结构

利用工程模式创建app
在根目录创建create_app.py文件
在里面进行编写

from flask import Flask  #导入Flask
from flask_cors import CORS  #跨域
def create_app(config):
    flask_app=Flask(__name__)   #实例化flask对象
    #加载配置项
	flask_app.config.from_object(config)
    #注册蓝图

    #绑定db

    # 跨域
    CORS(flask_app)

    return flask_app

项目内创建settings目录里创建config.py文件
在里边编写序偶需要的配置项

class DefaultConfig:
    SECRET_KEY='asdasfjsfagfasfa'   #cookie秘钥
    SQLALCHEMY_DATABASE_URI=''   #数据库配置项
    SQLALCHEMY_TRACK_MODIFICATIONS=False # 追踪数据的修改信号
    SQLALCHEMY_ECHO=True  # 是否在控制台打印输出sql语句
    JSON_AS_ASCII=False    #json类型是否转换

#继承自上边的类,避免以后的修改
class DevConfig(DefaultConfig):
    # 数据库类型+数据库操作引擎://用户名:密码@主机名:端口/数据库名
    SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:mysql密码@127.0.0.1:3306/数据库名'

项目根目录创建app.py文件 在里边导入配置项 app实例create_app

from create_app import create_app  #导入创建好的create_app
from settings.config import DevConfig  #导入配置项

app=create_app(DevConfig)

#通过功能函数方式创建了对象

可以在里面编写main 运行框架
也可以在调试配置对话框里配置运行
Flask框架创建项目初期总结_第5张图片
Flask框架创建项目初期总结_第6张图片
Flask框架创建项目初期总结_第7张图片
配置好之后下次就可地点击旁边的开始就可以运行
Flask框架创建项目初期总结_第8张图片

在里面配置蓝图

在项目内创建views目录里创建users.py文件
在里面进行编写

from flask import Blueprint  #导入蓝图
from flask_restful import Api,Resource
# # url_prefix  # 指定当前蓝图下所有路由的前缀
user_dp=Blueprint('user_dp',__name__,url_prefix='/users') #实例化蓝图对象

api=Api(user_dp)  #实例化蓝图收集器#实例化一个Api对象 Api对象的作用是用来搜集路由的

#定义类视图 继承自Resource类,通过Api的实例化对象进行搜集
class UserView(Resource):
    def get(self):       #测试是否成功
        return 'ssss'
#添加路由
api.add_resource(UserView,'/user') #完整地址是 /users/user

然后在create_app.py里注册一下

from flask import Flask  #导入Flask
from views.users import user_dp  #导入实例化的蓝图对象
from flask_cors import CORS
def create_app(config):
    flask_app=Flask(__name__)   #实例化flask对象
    #加载配置项
    flask_app.config.from_object(config)

    #注册蓝图
    flask_app.register_blueprint(user_dp)

    #绑定db

    # 跨域
    CORS(flask_app)

    return flask_app

注册数据库配置

在目录创建models目录里创建model.py文件进行编写模型类

from flask_sqlalchemy import SQLAlchemy  #导入

db=SQLAlchemy()  #实例化数据库连接对象

#创建模型类
class UserModel(db.Model):
    # primary_key主键   autoincrement自增  default默认
    id=db.Column(db.Integer,primary_key=True,autoincrement=True,comment='ID')
    name=db.Column(db.String(32),default='',comment='名字')

然后在create_app.py里注册一下

from flask import Flask  #导入Flask
from views.users import user_dp  #导入实例化的蓝图对象
from models.model import db   #导入实例化的数据库连接对象
from flask_cors import CORS
def create_app(config):
    flask_app=Flask(__name__)   #实例化flask对象
    #加载配置项
    flask_app.config.from_object(config)

    #注册蓝图
    flask_app.register_blueprint(user_dp)

    #绑定db
    db.init_app(flask_app)

    # 跨域
    CORS(flask_app)

    return flask_app

在根目录创建manage.py文件配置迁移项

from flask_script import Manager #Manager类作业是把命令行运行该文件的时候,添加一些命令
from app import app   #导入app
from flask_migrate import MigrateCommand,Migrate    # 导入迁移类和迁移命令类
from models.model import db    #导入实例化后的数据库对象

manage=Manager(app)  #实例化命令行管理对象
migrate=Migrate(app,db)  #实例化迁移执行类
manage.add_command('db',MigrateCommand)  #给命令行管理对象添加一组命令


# 注意编写好了要启动一下
if __name__ == '__main__':
    manage.run()

在python终端运行命令进行迁移

#  初始化迁移文件  # 初始化,只需要初始化一次
python manage.py db init

# 生成迁移文件
python manage.py db migrate

# 执行迁移
python manage.py db upgrade

# 迁移完成

你可能感兴趣的:(flask,python,后端)