django自帶的序列化組件

1.什么是序列化組件

在django中,自帶一個序列化組件,它是用來將數據進行整理、轉化成特定的為一個特定的格式(比如json數據格式),然后傳輸給前端,以便前端對數據進行處理操作。

創新互聯專注于羅城企業網站建設,響應式網站設計,商城網站建設。羅城網站建設公司,為羅城等地區提供建站服務。全流程按需網站設計,專業設計,全程項目跟蹤,創新互聯專業和態度為您提供的服務

2.為什么要用序列化組件

當我們從數據庫取出一些數據時,我們需要將數據轉成特定的格式,比如列表套字典的形式,然后將這些數據序列化成json的格式傳輸給前端,這就需要我們在后端把數據庫里的數據每一個都遍歷取值出來,這樣比較麻煩,而且當數據字段很多的時候,我們很多遍歷出來!代碼如下:

后端代碼:

from django.http import JsonResponse   # 導入JsonResponse模塊
from app01 import models

def ab_ser(request):
    user_queryset = models.User.objects.all()  # 查詢所有的數據對象
    user_list = []   # 創建一個空列表
    for user_obj in user_queryset:   # 循環出每一個數據對象
        tmp = {       # 利用對象點的方式取出每一個對應元素來充當字段的值
            'pk':user_obj.pk,
            'username':user_obj.username,
            'age':user_obj.age,
            'gender':user_obj.gender
        }
        user_list.append(tmp)   # 添加到列表中
    return JsonResponse(user_list, safe=False)   # 轉換成json格式返回給前端頁面(safe屬性為ture則表示只能傳dict字典的形式,因為現在為列表的形式,所以改為False)

前端代碼:

<body>
{% for user_obj in user_list %}
    <p>{{ user_obj }}</p>
{% endfor %}
</body>

所以,這時候django給我們提供了一個自帶的序列化組件,它能夠將從數據庫取出的數據,自動整合成一個特定的格式!大大減少了我們的工作!

3.django自帶的序列化組件

自帶的序列化模塊為serializes

# 格式:serializers.serialize('序列化成什么格式',數據)
# 示例:

from django.core import serializers   # 導入

def ab_ser(request):
    user_queryset = models.User.objects.all()
    res = serializers.serialize('json',user_queryset)  # 序列化成json格式數據
        """會自動幫你將數據變成json格式的字符串 并且內部非常的全面"""
    return HttpResponse(res)  # 返回給前端頁面
'''

[{"model": "app01.user", 
"pk": 1, 
"fields": {"username": "gary", "age": 19, "gender": 1}}, 

{"model": "app01.user", 
"pk": 2, 
"fields": {"username": "tom", "age": 20, "gender": 2}},

{"model": "app01.user", 
"pk": 3, 
 "fields": {"username": "kevin", "age": 29, "gender": 3}}, 
 
 {"model": "app01.user", 
 "pk": 4,
 "fields": {"username": "jack", "age": 38, "gender": 4}}]

'''

# 我們可以看到它幫我們處理的數據是非常全面的,
# 告訴了我們這個數據來自于哪一個應用下的拿一張表,還告訴了我們對應的主鍵值,和詳細信息

當前題目:django自帶的序列化組件
新聞來源:http://m.kartarina.com/article46/dsogieg.html

成都網站建設公司_創新互聯,為您提供搜索引擎優化網站設計公司品牌網站制作網站維護用戶體驗小程序開發

廣告

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

成都seo排名網站優化
主站蜘蛛池模板: 永久免费av无码网站大全| 亚洲精品无码久久久| 久久久久无码精品亚洲日韩| 亚洲精品无码av人在线观看| 亚洲AV无码专区在线亚 | 亚洲爆乳无码精品AAA片蜜桃| 亚洲精品无码你懂的| 中国少妇无码专区| 亚洲av无码一区二区三区人妖 | 成在人线av无码免费高潮喷水 | 亚洲中文字幕无码永久在线| 精品亚洲A∨无码一区二区三区| 亚洲国产精品成人AV无码久久综合影院 | 久久久久亚洲精品无码系列| 亚洲av无码日韩av无码网站冲| 日韩人妻无码一区二区三区| 青青爽无码视频在线观看| 无码少妇一区二区| 精品久久久久久无码中文字幕| 久久午夜夜伦鲁鲁片免费无码影视| 一区二区三区人妻无码| 国产成人无码网站| 亚洲成a人无码亚洲成av无码| 无码免费一区二区三区免费播放| 久久久久亚洲AV无码专区桃色 | 狠狠躁狠狠爱免费视频无码| 亚洲av无码专区在线观看亚| 蜜桃成人无码区免费视频网站| 中文无码久久精品| 国产av无码专区亚洲av果冻传媒| 一本大道久久东京热无码AV| 无码一区18禁3D| 国产精品爆乳奶水无码视频| 亚洲AV无码一区二区大桥未久| 亚洲av无码日韩av无码网站冲| 亚洲精品久久久久无码AV片软件| 性色AV蜜臀AV人妻无码| 免费无码一区二区三区蜜桃大 | 色欲狠狠躁天天躁无码中文字幕| 国产成人AV片无码免费| 亚洲av永久无码精品漫画 |