首页 > 其他分享 >12、flask-模型-models

12、flask-模型-models

时间:2024-07-07 23:52:55浏览次数:20  
标签:Flask 12 flask URI models ORM install pip

ORM

Flask通过Model操作数据库、不管你数据库的类型是Mysql或者是sqlite、Flask自动帮你生成相应的数据库类型的sql语句、所以不需要关注sql语句和类型、对数据库的操作flask会自动帮我们完成

Flask使用关系映射(Object Relational Mappong, 简称ORM)框架去操控数据库

ORM对象关系映射、是一种程序技术、用于实现面向对象编程语言里不同类型系统的数据之间的转换

将对对象的操作转为原生的sql

优点:
- 易用性,可以有效较少重复sql
- 性能损耗少
- 设计灵活、可以轻松实现复杂的查询
- 移植性好

 

Flask的ORM

Flask使用python自带的ORM:SQLAlchemy
针对于Flask的支持、安装插件 flask=sqlalchemy
安装:
- pip install flask-sqlalchemy

连接sqlite

SQLLite连接的URI:
- DB_URI = sqlite:///sqlite3.db

连接mysql

USERNAME='root'
PASSWORD='root'
HOSTNAME = 'localhost'
PORT = '3306'
DATABASE = 'ocs'

格式:
 - mysql+pymysql://USERNAME:PASSWORD@HOSTNAME:PORT/DATABASE

配置URL:
DB_URI='mysql+pymysql://{}:{}@{}:{}/{}'.format(
    USERNAME,
    PASSWORD,
    HOSTNAME,
    PORT,
    DATABASE
)

在flask中使用ORM

连接数据库需要指定配置:
app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI    #配置连接数据库路径DB_URI
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False    #禁止对象追踪修改


SQLite数据库连接不需要额外的驱动,也不需要用户名和密码
#在Flask项目中使用
db = SQLALchemy()
db.init_app(app)

需要安装的包

#安装 flask-sqlalchemy (用于ORM关系对象映射)
- pip install flask-sqlalchemy -i https://pypi.douban.com/simple
- 或:pip install flask-sqlalchemy
#安装 flask-migrate (用于数据迁移)
- pip install flask-migrate -i https://pypi.douban.com/simple
-  或 pip install flask-migrate
#安装 pymysql (mysql驱动)
- pip install pymysql -i https://pypi.douban.com/simple
- 或pip install pymysql

 

标签:Flask,12,flask,URI,models,ORM,install,pip
From: https://www.cnblogs.com/littlecc/p/18289133

相关文章

  • 11、flask-模板-templates
    模板Templates模板是呈现给用户的界面在MVT架构中充当T的角色、实现了MT的解耦、开发中VT有着N:M的关系,一个V可以调用任意T,一个T可以被任意V调用模板处理分为两个过程:-加载HTML-模板渲染(模板语言)模板代码包含两个部分:-静态HTML-动态插入的代码段(模板语法)Jinja2模板......
  • 1225:金银岛
    时间限制:1000ms      内存限制:65536KB提交数:21790   通过数: 12302【题目描述】某天KID利用飞行器飞到了一个金银岛上,上面有许多珍贵的金属,KID虽然更喜欢各种宝石的艺术品,可是也不拒绝这样珍贵的金属。但是他只带着一个口袋,口袋至多只能装重量为w的物......
  • 10、flask-会话-session
    session会话是一种服务器端的会话技术、依赖于cookie特点:-服务端的会话技术-所有数据存储在服务器中-默认存储在内存中-存储结构也是key-value形式的键值对-session是离不开cookie的Flask中的session是全局对象常用操作:-设置seesion:-seesion['key']=val......
  • 9、flask-会话-cookie
    Cookie客户端的会话技术:-cookie本身由浏览器保存,通过response将cookie写道浏览器上、下一次访问时、浏览器会根据不同的规则携带cookie过来特点:-客户端的会话技术、浏览器的会话技术-数据全都是存储在客户端中-存储使用的键值对结构进行的存储-特性:-支持过期时......
  • 征途新开私服发布网(www.sf1223.cn)海量优质私服发布平台23
    征途新开私服发布网(sf1223.cn)作为一种非官方版本的征途游戏,极大地丰富了游戏体验,并吸引了大批忠实的玩家。然而,众多新服平台的存在也给玩家们带来了选择困难。在海量优质好服发布平台首先,征途的发布平台扮演着至关重要的角色。一个好的平台能够为玩家们提供稳定、安全、......
  • 征途新开私服发布网(www.sf1223.cn)海量优质私服发布平台33
    征途新开私服发布网(sf1223.cn)作为一种非官方版本的征途游戏,极大地丰富了游戏体验,并吸引了大批忠实的玩家。然而,众多新服平台的存在也给玩家们带来了选择困难。在海量优质好服发布平台首先,征途的发布平台扮演着至关重要的角色。一个好的平台能够为玩家们提供稳定、安全、......
  • 8、flask-Redirect重定向
    #路由+视图函数fromflaskimportBlueprint,request,render_template,jsonify,Response,redirect,url_for#frommodelsimport*#蓝图#创建蓝图对象#第一个参数:蓝图的名字#第二个参数:蓝图的包名blue=Blueprint('user',__name__,)@blue.route('/')#......
  • 7、flask-response响应
    #路由+视图函数fromflaskimportBlueprint,request,render_template,jsonify,Response#frommodelsimport*#蓝图#创建蓝图对象#第一个参数:蓝图的名字#第二个参数:蓝图的包名blue=Blueprint('user',__name__,)@blue.route('/')#路由defindex():......
  • 六、数据可视化—flask框架入门(爬虫及数据可视化)
    六、数据可视化—flask框架入门(爬虫及数据可视化)1,数据可视化简介2,flask(1)创建flask项目(2)开启debug模式(3)通过访问路径传递参数(4)加入渲染模板,渲染HTML文件(4-1)普通变量(4-2)列表变量(4-3)字典变量(5)用户表单提交1,数据可视化简介  数据可视化主要旨在借助于图形化手段,清晰......
  • Securing Large Language Models: Threats, Vulnerabilities and Responsible Practic
    本文是LLM系列文章,针对《SecuringLargeLanguageModels:Threats,VulnerabilitiesandResponsiblePractices》的翻译。保护大型语言模型:威胁、漏洞和负责任的做法摘要1引言2背景3LLM的安全和隐私问题4对抗性攻击和LLM漏洞5LLM的风险和失误6风险缓解策......