Django中的序列化

將程序中的一個數據結構類型轉換成Json.XML等格式,例如將模型類中的對象轉換成JSon字符串的過程就是序列化。前端

反之將JSON字符串轉換成django中的模型類對象的過程就是反序列化。python

 

在開發REST API接口時,要在視圖中須要作的是: 將數據序列化爲前端所須要的格式,並返回。 將前端發送的e數據反序列化爲模型類對象,保存到數據庫當中。數據庫

 

Django REST framework 框架 快速實現REST API。django

  • 提供了定義序列化器Serializer的方法,能夠快速根據 Django ORM 或者其它庫自動序列化/反序列化;
  • 提供了豐富的類視圖、Mixin擴展類,簡化視圖的編寫;
  • 身份認證和權限認證方式的支持。
  pickle序列化數據:

序列化: json

  dumps:將所傳入的變量的值序列化爲二進制數據,而後寫入文件或者進行傳輸。數據結構

  dump:能夠傳入兩個參數,一個爲須要序列化的變量,另外一個爲須要寫入的文件。框架

反序列化: 函數

  loads:首先把對象從磁盤文件讀到內存後,才能夠用loads方法反序列化出對象spa

  load:load方法能夠直接反序列化一個磁盤文件.net

 

  json序列化數據:json中的序列化後格式爲字符

 dumps方法可將json格式數據序列爲Python的相關的數據類型


loads方法則是相反,把python數據類型轉換爲json相應的數據類型格式要求

 

 在序列化時,中文漢字老是被轉換爲unicode碼,在dumps函數中添加參數ensure_ascii=False便可解決。

 

1.建立序列化器

  新建serializer.py 建立c一個類用於序列化和反序列化。

  class Book(serializers.ModelSerializer)

相關文章
相關標籤/搜索