bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

django要序列化的原因-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!

成都創(chuàng)新互聯(lián)主營思茅網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,成都app開發(fā),思茅h5微信小程序搭建,思茅網(wǎng)站營銷推廣歡迎思茅等地區(qū)企業(yè)咨詢

這篇文章將為大家詳細講解有關(guān)django要序列化的原因,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

django的序列化問題

Django中的序列化主要應用在將數(shù)據(jù)庫中檢索的數(shù)據(jù)返回給客戶端用戶,特別的Ajax請求一般返回的為Json格式。

1、serializers

from django.core import serializers  #專門用來序列化django的類

data = serializers.serialize("序列化格式",QuerySet )

#eg:data = serializers.serialize("json",QuerySet )

serialize 方法的參數(shù)有二:一個序列化目標格式,另外一個是序列化的對象Django Model實例(一般情況下就是QuerySet)

2、json.dumps

這時候也許有朋友就會問了為什么不直接用json.dumps來序列化呢?因為json.dumps只能序列化python提供的數(shù)據(jù)結(jié)構(gòu),Django Model實例是django提供的數(shù)據(jù)結(jié)構(gòu)。但如果你要用json.dumps的話也不是不行:

data=list(QuerySet)#要先把QuerySet通過list方法成list對象 

ret=json.dumps(data) 

但是,json不能處理時間類型(datatime),Python自帶的json.dumps方法序列化數(shù)據(jù)時候如果格式化的數(shù)據(jù)中有datetime類型數(shù)據(jù)時候會報錯。

這時候就得自定義處理器來對json dumps做擴展: 

import json 
from datetime import date 
from datetime import datetime 

class CJSONEncoder(json.JSONEncoder):
    def default(self, obj):
        if isinstance(obj,datetime.datetime):
            return obj.strftime('%Y-%m-%d %H:%M:%S')
        elif isinstance(obj,date):
            return obj.strftime('%Y-%m-%d')
        else:
            return json.JSONEncoder.default(self,obj)

# dl= json.dumps(datalist, cls=JsonCustomEncoder)

關(guān)于django要序列化的原因就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網(wǎng)站名稱:django要序列化的原因-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://vcdvsql.cn/article48/phdep.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供云服務器自適應網(wǎng)站網(wǎng)站導航商城網(wǎng)站網(wǎng)站設計搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設公司