日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Flask-SQLAlchemy插件

發布時間:2023/12/20 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Flask-SQLAlchemy插件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一,初始化

兩種方式:

db = SQLAlchemy() def create_app():app = Flask(__name__)db.init_app(app)return app app = Flask(__name__) db = SQLAlchemy(app)

二,配置填寫

SQLALCHEMY_DATABASE_URI = "mysql+pymysql://root:root@127.0.0.1/firstsqlalchemy"

三,使用

  • ORM類:之前都是通過Base = declarative_base()來初始化一個基類,然后再繼承,在Flask-SQLAlchemy中更加簡單了(代碼依賴以上示例):

    class User(db.Model):id = db.Column(db.Integer,primary_key=True)username = db.Column(db.String(80),unique=True)email = db.Column(db.String(120),unique=True)def __init__(self,username,email):self.username = usernameself.email = emaildef __repr__(self):return '<User %s>' % self.username
  • 映射模型到數據庫表:使用Flask-SQLAlchemy所有的類都是繼承自db.Model,并且所有的Column和數據類型也都成為db的一個屬性。但是有個好處是不用寫表名了,Flask-SQLAlchemy會自動將類名小寫化,然后映射成表名。
    寫完類模型后,要將模型映射到數據庫的表中,使用以下代碼創建所有的表:

    db.create_all()
  • 添加數據:這時候就可以在數據庫中看到已經生成了一個user表了。接下來添加數據到表中:

    admin = User('admin','admin@example.com') guest = User('guest','guest@example.com') db.session.add(admin) db.session.add(guest) db.session.commit()

    添加數據和之前的沒有區別,只是session成為了一個db的屬性。

  • 查詢數據:查詢數據不再是之前的session.query了,而是將query屬性放在了db.Model上,所以查詢就是通過Model.query的方式進行查詢了:

    users = User.query.all() # 再如: admin = User.query.filter_by(username='admin').first() # 或者: admin = User.query.filter(User.username='admin').first()
  • 刪除數據:刪除數據跟添加數據類似,只不過session是db的一個屬性而已:

    db.session.delete(admin) db.session.commit()

?

?

轉載于:https://www.cnblogs.com/donghaoblogs/p/10389691.html

總結

以上是生活随笔為你收集整理的Flask-SQLAlchemy插件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。