flask总结

本文深入探讨了ORM框架的核心概念及其在提高开发效率方面的作用,特别聚焦于Python中的SQLAlchemy和Flask应用中的Flask-SQLAlchemy插件。详细介绍了数据库配置、模型类映射及数据库操作的自动化流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模型的框架 - ORM(对象关系映射)

ORM框架的三大特征:

1.数据表到编程类的映射
2.数据类型的映射
3.数据表的关系映射到编程类的关系映射

ORM的优点:

封装了数据库中所有的操作,大大的提高了开发效率。可以省略庞大的数据访问层,即便不用SQL编码也能完成对数据的CRUD操作
Python中的ORM框架:SQLAlchemy
Flask中的ORM框架:SQLAlchemy,但是需要安装Flask-SQLAlchemy插件包

创建数据库

create database 数据库名 default charset utf8 collate utf8_general_ci;
collate utf8_general_ci:数据库的校对规则

collate=utf8_bin
utf8_bin:区分大小写
utf8_general_cs:大小写敏感;case insensitive的缩写
utf8_general_ci:大小写不敏感。case insensitive的缩写,意思是大小写不敏感

在Flask中配置数据库

1.通过app(Flask应用实例)构建配置信息

app.config['SQLALCHEMY_DATABASE_URI']="mysql+pymysql://用户名:密码@主机:端口/数据库名"

例如:

`app.config['SQLALCHEMY_DATABASE_URI']="mysql+pymysq://root:123456@localhost:3306/flask"`

2.创建数据库实例

from flask_sqlalchemy import SQLALchemy
db = SQLAlchemy(app)

模型类的映射管理

终端运行
1.python3 run.py db init
2.python3 run.py db migrate
3.python3 run.py db upgrade

设置自动提交

app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN']=True

哈希加密的导包

from werkzeug.security import generate_password_hash,check_password_hash

通用配置

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:123456@localhost:3306/flaskLogin"
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
app.config['DEBUG'] = True
app.config['SECRET_KEY'] = 'you guess'
db = SQLAlchemy(app)
manager = Manager(app)
migrate = Migrate(app, db)
manager.add_command('db', MigrateCommand)
if __name__ == "__main__":
    manager.run()

待续。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值