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

django 解決自定義序列化返回處理數(shù)據(jù)為null的問題

 更新時(shí)間:2020年05月20日 16:36:19   作者:陌生誰家年少  
這篇文章主要介紹了django 解決自定義序列化返回處理數(shù)據(jù)為null的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

在接口返回?cái)?shù)據(jù)時(shí),如果數(shù)據(jù)庫表中查詢出來的某些字段為null時(shí),在前端需要多處理一些數(shù)據(jù)異常的情況。

django可以自定義序列化返回處理,將返回的內(nèi)容限制和預(yù)處理再返回到前端。

1.未處理時(shí)返回

如圖上,有email、mobile這兩個(gè)字段是有可以為空且默認(rèn)值為null的。

2.to_representation處理

在模型序列化類增加, to_representation方法,以自定義數(shù)據(jù)處理限制

from rest_framework import serializers
from .models import UserInfo

class UserInfoSerializer(serializers.ModelSerializer):
  class Meta:
    model = UserInfo
    # fields = '__all__'
    fields = (
      'id', 'email', 'date_create', 'mobile', 'email', 'notice_voice', 'notice_email', 'notice_sms',
      'notice_push')

  def to_representation(self, instance):
    data = super().to_representation(instance)
    if not data['email']:
      data['email'] = ""
    if not data['mobile']:
      data['mobile'] = ""
    return data

3.處理后前端獲取

補(bǔ)充知識(shí):Django query查詢正常,返回對(duì)象為空QuerySet

我出現(xiàn)這個(gè)錯(cuò)誤的前提條件:

數(shù)據(jù)為導(dǎo)入的數(shù)據(jù),并不是正常從前端添加入庫的。

問題現(xiàn)象:

views里獲取數(shù)據(jù)庫查詢對(duì)象集合 obj= models.表名.objects.filter(**kwargs)

控制臺(tái)debug發(fā)現(xiàn) obj為QuerySet<[]>

拿著query到數(shù)據(jù)庫里執(zhí)行sql ,還能查出數(shù)據(jù),就是沒返回

解決問題:

查看數(shù)據(jù)庫字段是否符合models中定義的格式,如,是否有默認(rèn)值,

將數(shù)據(jù)庫為空字段修改成和models一樣的,有個(gè)快速比對(duì)的方法,從前端向數(shù)據(jù)庫添加一條數(shù)據(jù),拿這個(gè)正式數(shù)據(jù)和導(dǎo)入數(shù)據(jù)做比對(duì),哪里不一樣,修改哪里即可。

以上這篇django 解決自定義序列化返回處理數(shù)據(jù)為null的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用python?scrapy爬取天氣并導(dǎo)出csv文件

    使用python?scrapy爬取天氣并導(dǎo)出csv文件

    由于工作需要,將爬蟲的文件要保存為csv,以前只是保存為json,下面這篇文章主要給大家介紹了關(guān)于如何使用python?scrapy爬取天氣并導(dǎo)出csv文件的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • python 判斷文件還是文件夾的簡單實(shí)例

    python 判斷文件還是文件夾的簡單實(shí)例

    今天小編就為大家分享一篇python 判斷文件還是文件夾的簡單實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python?pass函數(shù)使用及其應(yīng)用的詳解

    Python?pass函數(shù)使用及其應(yīng)用的詳解

    Python中,pass是一種空語句,即不做任何事情,只起到占位符的作用,本文主要介紹了Python?pass函數(shù)使用及其應(yīng)用的詳解,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python通過getattr函數(shù)獲取對(duì)象的屬性值

    Python通過getattr函數(shù)獲取對(duì)象的屬性值

    這篇文章主要介紹了Python通過getattr函數(shù)獲取對(duì)象的屬性值,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 在python下使用tensorflow判斷是否存在文件夾的實(shí)例

    在python下使用tensorflow判斷是否存在文件夾的實(shí)例

    今天小編就為大家分享一篇在python下使用tensorflow判斷是否存在文件夾的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python+numpy+matplotalib實(shí)現(xiàn)梯度下降法

    python+numpy+matplotalib實(shí)現(xiàn)梯度下降法

    這篇文章主要為大家詳細(xì)介紹了python+numpy+matplotalib實(shí)現(xiàn)梯度下降法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Python存儲(chǔ)List數(shù)據(jù)到文件(text/csv/excel)幾種常見方法

    Python存儲(chǔ)List數(shù)據(jù)到文件(text/csv/excel)幾種常見方法

    在數(shù)據(jù)分析中經(jīng)常需要從csv格式的文件中存取數(shù)據(jù)以及將數(shù)據(jù)寫書到csv文件中,下面這篇文章主要給大家介紹了關(guān)于Python存儲(chǔ)List數(shù)據(jù)到文件(text/csv/excel)的幾種常見方法,需要的朋友可以參考下
    2024-02-02
  • 利用Python實(shí)現(xiàn)一個(gè)簡易的截圖工具

    利用Python實(shí)現(xiàn)一個(gè)簡易的截圖工具

    這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)一個(gè)簡易的截圖工具,可以截完圖之后顯示并且永遠(yuǎn)前置,感興趣的小伙伴可以嘗試一下
    2022-07-07
  • Python常見異常分類與處理方法

    Python常見異常分類與處理方法

    之前在學(xué)習(xí)python的時(shí)候有整理過python異常處理的文章,不夠簡單也不夠完整,所以決定再整理一篇,算做補(bǔ)充。
    2017-06-06
  • python的concat等多種用法詳解

    python的concat等多種用法詳解

    這篇文章主要為大家詳細(xì)介紹了python的concat等多種用法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11

最新評(píng)論