Flask SQLAlchemy 增删改查

3 篇文章 0 订阅

使用Flask-SQLAlchemy创建模型与表的映射


    1. 模型需要继承自db.Model
    2. 属性必须写成 db.Column()的数据类型
    3. 数据类型 db.String 是varchar
    4. db.Text 是text
    5. db.Integer 是int
    6. db.Column()中的数据类型需要加上长度
    7. 其他参数有primary_key
    8. autoincrement
    9. nullable 这些参数可以设置为True OR False

class Article(db.Model):
    __tablename__ = "article"
    id =db.Column(db.Integer,primary_key=True, autoincrement=True)
    title = db.Column(db.String(100), nullable=False)
    content = db.Column(db.Text, nullable=False)

增加数据


    arricle = Article(title="aaa",content="bbb")
    db.session.add(arricle)
    db.session.commit()

查询数据


    result = Article.query.filter(Article.title=='mark').first()
    print(result.content)

    1. query是从db.Model中继承来的
    2. query.filter(Article.title=’xx’)过滤条件
    3. first()取出查询结果的第一条数据 实际上就是一个Article对象
    4. .all()是查询到的所有结果 是一个Article对象数组

修改数据


    1. 查询到要改的数据 拿到Article对象
    2. 更新 article1.title=’new title’
    3. db.session.commit()

    result = Article.query.filter(Article.title=='success').first()
    old_title = result.title
    result.title = 'success2018'
    db.session.commit()

删除


    1. 查出要删除的数据 拿到Article对象
    2. db.session.delete(article)
    3. db.session.commit()

    result = Article.query.filter(Article.title=='success2018').first()
    db.session.delete(result)
    db.session.commit()


更详细的知识:https://segmentfault.com/a/1190000004618621
SQLAlchemy官方文档:http://flask-sqlalchemy.pocoo.org/2.1/






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值