在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

    Flask博客實戰(zhàn) SQLAlchemy的增刪改查

    Flask博客實戰(zhàn) SQLAlchemy的增刪改查

    既然我們選擇了使用ORM框架,那就必須熟練掌握其提供的增刪改查方法,在正式編寫視圖事前,本節(jié)內(nèi)容我們先在shell環(huán)境中來了解和熟悉其增刪改查的基礎(chǔ)方法!

    插入記錄

    這里我們以博客的分類為案例進行演示

    1、首先設(shè)置環(huán)境變量,進入shell環(huán)境

    至于如何導(dǎo)出環(huán)境變量請參考《安裝并配置Flask-SQLAlchemy》章節(jié),最后同步數(shù)據(jù)字段相關(guān)內(nèi)容!

    2、運行如下命令進入shell環(huán)境

    flask shell

    3、導(dǎo)入模型數(shù)據(jù)

    >>> from RealProject import db>>> from app.blog.models import Category, Post

    插入一條分類記錄

    >>> cate = Category(name=’分類一’)>>> db.session.add(cate)>>> db.session.commit()>>> cate

    以上就是插入向數(shù)據(jù)庫插入一條記錄的基本思路:

    • 1、實例化模型的python對象
    • 2、將該實例化對象添加到回話 db.session.add(cate)
    • 3、提交該會話 db.session.commit()

    查詢記錄

    在查詢之前我們先多添加幾條分類數(shù)據(jù)的記錄

    • 拓展,批量插入數(shù)據(jù)的幾種方法:http://www.lotdoc.cn/blog/detail/178/

    >>> cates = [‘分類二’, ‘分類三’, ‘分類四’]>>> for name in cates:… cate = Category(name=name) … db.session.add(cate)… db.session.commit()…>>> Category.query.all()[, , , ]

    查詢最常用方法有:all()、first()、get()、filter()、order_by()

    • 按分類名稱檢索

    >>> cate1 = Category.query.filter_by(name=’分類一’).first()>>> cate1.id1>>> cate1.name’分類一’

    這里如果傳入的分類名稱不存在則返回None!

    • 通過更復(fù)雜的表達式查詢多個分類:

    >>> Category.query.filter(Category.name.endswith(‘分類’)).all()[]>>> Category.query.filter(Category.name.endswith(‘分類一’)).all() []>>> Category.query.filter(Category.name.endswith(‘2’)).all() []>>> Category.query.filter(Category.name.startswith(‘分’)).all() [, , , ]

    模糊匹配某一個字段,endswith從字段的最后一個字符開始匹配,startswith從第一個字符開始匹配

    • 按某字段進行排序:

    >>> Category.query.order_by(Category.add_date).all()[, , , ]>>> Category.query.order_by(-Category.add_date).all()[, , , ]

    • 限制查詢數(shù)量

    >>> Category.query.limit(1).all()[]>>> Category.query.limit(2).all() [, ]>>> Category.query.limit(3).all() [, , ]

    • 按住鍵查詢

    >>> Category.query.get(1)

    更新方法

    >>> cate_2 = Category.query.get(2)>>> cate_2.name = ‘分類二new’>>> db.session.commit()

    刪除記錄

    >>> cate = Category.query.get(1)>>> db.session.delete(cate)>>> db.session.commit()

    常用的查詢和過濾方法

    過濾方法

    說明

    filter()

    使用指定的規(guī)則過濾記錄,返回新產(chǎn)生的查詢對象

    filter_by()

    使用指定規(guī)則過濾記錄(以關(guān)鍵字表達式的形式),返回新產(chǎn)生的查詢對象

    order_by()

    根據(jù)指定條件對記錄進行排序,返回新產(chǎn)生的查詢對象

    group_by()

    根據(jù)指定條件對記錄進行分組,返回新產(chǎn)生的查詢對象

    下面是一些常用的查詢方法:

    查詢方法

    說明

    all()

    返回包含所有查詢記錄的列表

    first()

    返回查詢的第一條記錄,如果未找到,則返回 None

    get(id)

    傳入主鍵值作為參數(shù),返回指定主鍵值的記錄,如果未找到,則返回 None

    count()

    返回查詢結(jié)果的數(shù)量

    first_or_404()

    返回查詢的第一條記錄,如果未找到,則返回 404 錯誤響應(yīng)

    get_or_404(id)

    傳入主鍵值作為參數(shù),返回指定主鍵值得記錄,如果未找到,則返回 404 錯誤響應(yīng)

    paginate()

    返回一個 Pagination 對象,可以對記錄進行分頁處理

    其他章節(jié):

  • Flask博客開發(fā)實戰(zhàn) – 前言
  • Flask博客開發(fā)實戰(zhàn) – 配置環(huán)境并安裝Flask
  • Flask博客實戰(zhàn) – 快速上手
  • Flask博客實戰(zhàn) – 目錄結(jié)構(gòu)
  • Flask博客實戰(zhàn) – 工廠函數(shù)
  • Flask博客實戰(zhàn) – 藍圖應(yīng)用
  • Flask博客實戰(zhàn) – Flask-SQLAlchemy的使用
  • Flask博客實戰(zhàn) – 配置Flask-Migrate
  • Flask博客實戰(zhàn) – 博客相關(guān)模型創(chuàng)建
  • 鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
    用戶投稿
    上一篇 2022年6月16日 09:09
    下一篇 2022年6月16日 09:09

    相關(guān)推薦

    • 分享4條發(fā)微商朋友圈的方法(微商朋友圈應(yīng)該怎么發(fā))

      對于微商朋友來說,朋友圈的重要性不言而喻了。 那么微商的朋友圈到底該怎么發(fā)呢? 為什么同樣是經(jīng)營一個朋友圈,有的微商看起來逼格滿滿,實際效果也不錯;而有的卻動都不動就被屏蔽甚至拉黑…

      2022年11月27日
    • 《寶可夢朱紫》夢特性怎么獲得?隱藏特性獲取方法推薦

      寶可夢朱紫里有很多寶可夢都是擁有夢特性會變強的寶可夢,很多玩家不知道夢特性怎么獲得,下面就給大家?guī)韺毧蓧糁熳想[藏特性獲取方法推薦,感興趣的小伙伴一起來看看吧,希望能幫助到大家。 …

      2022年11月25日
    • 《寶可夢朱紫》奇魯莉安怎么進化?奇魯莉安進化方法分享

      寶可夢朱紫中的奇魯莉安要怎么進化呢?很多玩家都不知道,下面就給大家?guī)韺毧蓧糁熳掀骠斃虬策M化方法分享,感興趣的小伙伴一起來看看吧,希望能幫助到大家。 奇魯莉安進化方法分享 奇魯莉安…

      2022年11月25日
    • 什么是推廣cpa一篇文章帶你看懂CPA推廣渠道

      CPA渠道 CPA指的是按照指定的行為結(jié)算,可以是搜索,可以是注冊,可以是激活,可以是搜索下載激活,可以是綁卡,實名認(rèn)證,可以是付費,可以是瀏覽等等。甲乙雙方可以根據(jù)自己的情況來定…

      2022年11月25日
    • 抖音直播帶貨有哪些方法技巧(抖音直播帶貨有哪些痛點)

      如今抖音這個短視頻的變現(xiàn)能力越來越突顯了,尤其是在平臺上開通直播,更具有超強的帶貨屬性,已經(jīng)有越來越多的普通人加入到其中了。不過直播帶貨雖然很火,但是也不是每個人都能做好的,那么在…

      2022年11月24日
    • 明查|美國新冠后遺癥患者中有16%癥狀嚴(yán)重以致無法工作?

      點擊進入澎湃新聞全球事實核查平臺 速覽 – 網(wǎng)傳數(shù)據(jù)比例無權(quán)威信源佐證,該比例有可能是結(jié)合了美國疾病防控中心和布魯金斯學(xué)會的數(shù)據(jù)得出,但這兩個機構(gòu)的調(diào)研目的和樣本都不同…

      2022年11月24日
    • 《寶可夢朱紫》暴飛龍怎么抓?暴飛龍獲得方法

      寶可夢朱紫暴飛龍位置在哪?在游戲中,很多玩家還不清楚暴飛龍具體要怎么樣獲得,其實獲得方法很簡單,暴飛龍直接是沒得抓的,需要玩家從寶貝龍進化得到,下面一起來看一下寶可夢朱紫暴飛龍獲得…

      2022年11月23日
    • 《寶可夢朱紫》布土撥怎么進化?布土撥進化方法介紹

      寶可夢朱紫中,不同的寶可夢有不同的進化方法,其中布土撥的進化方法是比較特殊的。很多玩家不知道寶可夢朱紫布土撥怎么進化,下面就帶來寶可夢朱紫布土撥進化方法介紹,一起來看看吧,希望能幫…

      2022年11月23日
    • 《寶可夢朱紫》薄荷怎么獲得?薄荷獲得方法

      寶可夢朱紫中薄荷有改變寶可夢的屬性或性格等效果,很多玩家想知道寶可夢朱紫薄荷怎么獲得,下面就帶來寶可夢朱紫薄荷獲得方法,感興趣的小伙伴一起來看看吧,希望能幫助到大家。 薄荷獲得方法…

      2022年11月23日
    • 《寶可夢朱紫》怎么交換精靈?交換精靈方法一覽

      寶可夢朱紫中玩家可以和好友或者npc進行交換寶可夢獲得自己沒有的寶可夢,很多玩家想知道寶可夢朱紫怎么交換精靈,下面就帶來寶可夢朱紫交換精靈方法一覽,感興趣的小伙伴不要錯過,希望能幫…

      2022年11月23日

    聯(lián)系我們

    聯(lián)系郵箱:admin#wlmqw.com
    工作時間:周一至周五,10:30-18:30,節(jié)假日休息