Flask入门—数据库SQLalchemy

这篇笔记介绍了如何使用Flask结合SQLAlchemy进行数据库操作,包括安装flask-sqlalchemy扩展,设置数据库,定义数据模型,以及执行增删改查操作。示例代码展示了如何处理数据库的关系引用和执行简单查询。
摘要由CSDN通过智能技术生成

本笔记是居于黑马程序员的Flask快速入门视频记的笔记,因为感觉这是我找了一段时间后,发现最基础的入门教程,看完这个视频,再去看《Flask Web开发》那本书,可能会好理解了。

视频原地址: https://www.bilibili.com/video/av19817183/index_18.html?t=47

Flask+MySql实现用户登陆注册:https://blog.csdn.net/coder_py/article/details/76572808

1.SQLAlchemy扩展:

SQLAlchemy是一个关系型数据库框架,它提供了高层的ORM和底层的原生数据库的操作。flask-sqlalchemy是一个简化了SQLAlchemy操作的flask扩展。

安装flask-sqlalchemy:

pip install flask-sqlalchemy

如果连接的是mysql数据库,需要安装mysqldb

pip install flask-mysqldb

Flask的数据库设置:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql(+pymysql)://root:mysql@127.0.0.1:3306/test'

mysql+pymysal://username:password@server/db

其他设置:

# 动态追踪修改设置,如未设置只会提示警告,不建议开启
app.config['SQLALCHEMY_TRACK_MODEFICATIONS'] = False

#查询时会显示原始SQL语句
app.config['SQLALCHEMY_ECHO'] = True

2.定义数据模型

定义两张表角色(管理员/普通用户)用户(角色ID):

# 配置数据库地址
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123321@127.0.0.1:3306/*'
# 跟踪数据库修改(不建议开启)
app.config['SQLALCHEMY_TRACK_MODEFICATIONS'] = False

db = SQLAlchemy(app)

# 数据库的模型, db.Model 表示继承自数据库模型
class Role(db.Model):
    # 定义表名
    __tablename__ = 'roles'

    # 定义字段 db.Column就表示它是一个字段 , primary_key就表示该字段它是主键
    id = db.Column(db.Integer, primary_key = True)
    name = db.column(db.String(16), unique = True)

class User(db.Model):
    # 定义表名
    __table__ = 'users'

    # 定义字段
    id = db.Column(db.Integer, primary_key = True)
    name = db.Column(db.String(16), unique = True)
    #role_id这一列是外键&#x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值