欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

編寫Python腳本把sqlAlchemy對象轉(zhuǎn)換成dict的教程

 更新時間:2015年05月29日 12:36:26   作者:wangdai  
這篇文章主要介紹了編寫Python腳本把sqlAlchemy對象轉(zhuǎn)換成dict的教程,主要是基于Python的model類構(gòu)建一個轉(zhuǎn)換的方法,需要的朋友可以參考下

在用sqlAlchemy寫web應用的時候,經(jīng)常會用json進行通信,跟json最接近的對象就是dict,有時候操作dict也會比操作ORM對象更為方便,畢竟不用管數(shù)據(jù)庫session的狀態(tài)了。

假設數(shù)據(jù)庫里有一張post表,其中一種方法就是

p = session.query(Post).first()
p.__dict__

但由于p是sqlAlchemy的對象,所以p.__dict__中會有一些其他的屬性比如_sa_instance這種我們不需要關注的

那么我們可以給model的基類加一個方法,假設models.py中原來是這樣

Base = sqlalchemy.ext.declarative.declarative_base()

class Post(Base):
  __tablename__ = 'post'
  id = Column(Integer, primary_key=True)
  title = Column(String)

那么我們可以加一個to_dict()方法到Base類中

def to_dict(self):
  return {c.name: getattr(self, c.name, None) for c in self.__table__.columns}

Base.to_dict = to_dict

這樣就可以

p = session.query(Post).first()
p.to_dict()

當然,如果model沒有和table綁定的話model里是沒有__table__的信息的,可能也會出問題,不過我目前覺得這樣最方便了

相關文章

  • 如何用OpenCV -python3實現(xiàn)視頻物體追蹤

    如何用OpenCV -python3實現(xiàn)視頻物體追蹤

    OpenCV是一個基于BSD許可(開源)發(fā)行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。這篇文章主要介紹了如何用OpenCV -python3實現(xiàn)視頻物體追蹤,需要的朋友可以參考下
    2019-12-12
  • 淺談python浮點數(shù)比較的三種方法

    淺談python浮點數(shù)比較的三種方法

    在 Python 中,由于浮點數(shù)在計算機內(nèi)部的表示方式是二進制的,因此進行浮點數(shù)比較時可能會出現(xiàn)精度問題,本文就介紹了三種解決方法,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • 使用python進行圖片的文字識別詳細代碼

    使用python進行圖片的文字識別詳細代碼

    Tesseract OCR是一款由Google團隊開發(fā)的開源OCR引擎,用于將圖片、PDF 等格式中的文本轉(zhuǎn)換為可編輯的文本格式,本文主要介紹了Python進行圖片的文字識別功能OCR的相關知識,需要的朋友可以參考下
    2023-05-05
  • Python進階多線程爬取網(wǎng)頁項目實戰(zhàn)

    Python進階多線程爬取網(wǎng)頁項目實戰(zhàn)

    這篇文章主要為大家介紹了Python進階,Python多線程爬取網(wǎng)頁項目實戰(zhàn)的示例呈現(xiàn)步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-10-10
  • Python 跨文件夾導入自定義包的實現(xiàn)

    Python 跨文件夾導入自定義包的實現(xiàn)

    有時我們自己編寫一些模塊時,跨文件夾調(diào)用會出現(xiàn)ModuleNotFoundError: No module named 'XXX',本文就來介紹一下解決方法,感興趣的可以了解一下
    2023-11-11
  • 詳解Python3序列賦值、序列解包

    詳解Python3序列賦值、序列解包

    這篇文章主要介紹了Python3序列賦值、序列解包的相關知識,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • python簡易遠程控制單線程版

    python簡易遠程控制單線程版

    這篇文章主要為大家詳細介紹了python簡易遠程控制單線程版,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Python實現(xiàn)購物車程序

    Python實現(xiàn)購物車程序

    這篇文章主要為大家詳細介紹了Python實現(xiàn)購物車程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • pycharm 創(chuàng)建py文件總是為txt格式的問題及解決

    pycharm 創(chuàng)建py文件總是為txt格式的問題及解決

    這篇文章主要介紹了pycharm 創(chuàng)建py文件總是為txt格式的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Pycharm內(nèi)置終端及遠程SSH工具的使用教程圖文詳解

    Pycharm內(nèi)置終端及遠程SSH工具的使用教程圖文詳解

    這篇文章主要介紹了Pycharm內(nèi)置終端及遠程SSH工具的使用教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03

最新評論