最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

那么我們可以給model的基類加一個方法,假設(shè)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__的信息的,可能也會出問題,不過我目前覺得這樣最方便了

相關(guān)文章

  • Python中ConfigParser模塊示例詳解

    Python中ConfigParser模塊示例詳解

    有些時候在項目中,使用配置文件來配置一些靈活的參數(shù)是比較常見的事,因為這會使得代碼的維護變得更方便,而ini配置文件是比較常用的一種,今天介紹用ConfigParser模塊來解析ini配置文件,感興趣的朋友一起看看吧
    2023-01-01
  • Django在Model保存前記錄日志實例

    Django在Model保存前記錄日志實例

    這篇文章主要介紹了Django在Model保存前記錄日志實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python全棧之進程和守護進程

    Python全棧之進程和守護進程

    這篇文章主要為大家介紹了Python進程和守護進程,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Python隨機生成8位密碼的示例詳解

    Python隨機生成8位密碼的示例詳解

    這篇文章主要為大家詳細介紹了基于Python實現(xiàn)隨機生成8位密碼的相關(guān)方法,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以參考一下
    2023-02-02
  • python?如何求N的階乘

    python?如何求N的階乘

    這篇文章主要介紹了python?如何求N的階乘,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python處理RSTP視頻流過程解析

    python處理RSTP視頻流過程解析

    這篇文章主要介紹了python處理RSTP視頻流過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • python反轉(zhuǎn)一個三位整數(shù)的多種實現(xiàn)方案

    python反轉(zhuǎn)一個三位整數(shù)的多種實現(xiàn)方案

    這篇文章主要介紹了python反轉(zhuǎn)一個三位整數(shù)的多種實現(xiàn)方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • python連接access數(shù)據(jù)庫兩種方式總結(jié)

    python連接access數(shù)據(jù)庫兩種方式總結(jié)

    這篇文章主要介紹了python連接access數(shù)據(jù)庫兩種方式的相關(guān)資料,SQLAlchemy使用access方言進行連接,而pyodbc則通過pyodbc模塊實現(xiàn)連接,文章還提供了連接代碼示例,需要的朋友可以參考下
    2025-02-02
  • Django imgareaselect手動剪切頭像實現(xiàn)方法

    Django imgareaselect手動剪切頭像實現(xiàn)方法

    這篇文章主要介紹了Django imgareaselect手動剪切頭像實現(xiàn)方法,實例分析了Django框架操作圖片的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • Python音頻處理庫pydub的使用教程詳解

    Python音頻處理庫pydub的使用教程詳解

    Pydub是Python音頻處理庫,可以對音頻進行切割、合并、轉(zhuǎn)換、調(diào)整音量等操作。本文將對pydub各個知識點和案例進行介紹,需要的可以參考一下
    2023-03-03

最新評論

泸水县| 方山县| 施秉县| 杂多县| 西林县| 多伦县| 巧家县| 新丰县| 谢通门县| 永宁县| 滨州市| 海兴县| 庐江县| 互助| 鸡东县| 科技| 鹤庆县| 永年县| 阿图什市| 确山县| 蓝田县| 易门县| 苍山县| 永寿县| 城市| 白山市| 仪陇县| 巴塘县| 宁陵县| 北海市| 道孚县| 孙吴县| 南靖县| 日照市| 延长县| 改则县| 临泉县| 二连浩特市| 句容市| 九台市| 黄浦区|