django自带serializers序列化返回指定字段的方法

django orm 有个defer方法,指定模型排除的字段。

如下返回的Queryset, 排除‘username', 'id'。

users=models.UserInfo.objects.defer('username','id')

或users=models.UserInfo.objects.filter(...).defer('username','id')

再如下,使用django自带serializers进行序列,发现序列化的数据仍存在‘username', 'id'这两个字段。

data = serializers.serialize('json', users)

如何解决?

在使用django自带serializers时,添加fields选项,将不需要的字段放入即可:

users=models.UserInfo.objects.all()

data = serializers.serialize('json', users, fields=('username', 'id'))

以上这篇django自带serializers序列化返回指定字段的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Django模型序列化返回自然主键值示例代码

    场景 在设计表结构时,难免需要建立一些外键关联.例如这样两个模型: from django.db import models class Person(models.Model): username = models.CharField(max_length=100) birthdate = models.DateField() class Book(models.Model): name = models.CharField(max_length=100) author = models.Fo

  • 详解django的serializer序列化model几种方法

    序列化是将对象状态转换为可保持或传输的格式的过程.与序列化相对的是反序列化,它将流转换为对象.这两个过程结合起来,可以轻松地存储和传输数据 方法一:通过继承View类,重写get方法,获取商品的前是前十条数据,通过serialize序列化数据,返回数据响应. from django.views.generic import View from goods.models import Goods from django.core import serializers from django.htt

  • Django框架中序列化和反序列化的例子

    1.序列化 DRF的核心 就是 前后端分离的核心 前后端分离开发的核心: 将模型转换为json 称之为 序列化 将json转换为模型 称之为 反序列化 1.序列化器的字段 Serializer 序列化器 为了得到模型里的字段,序列化器中的字段应与模型类中的字段名一致 ''' serializers.py ''' class BookInfoSerializer(serializers.Serializer): # read_only=True 只能读 不能修改 id = serializers.

  • Django model序列化为json的方法示例

    本文环境 Python 3.6.5 Django 2.0.4 fix(2018.5.19):最近得知Django 的model基类需要声明为abstract,故在原来的代码加入abstract声明,以免误导 在Django中,关于如何将model类序列化为json,一般的话有两a器 将model类转为字典,再使用json库的dumps方法转为json 第一种方法就不多讲了,直接去看官方文档就好啦 一般来说,官方提供的方法应该都是比较好用和稳定的,然而,使用官方的序列化器却问题不少: 格式丑陋,格

  • django Serializer序列化使用方法详解

    Serializer序列化器 定义Serializer 1. 定义方法 Django REST framework中的Serializer使用类来定义,须继承自rest_framework.serializers.Serializer. 例如,我们已有了一个数据库模型类BookInfo class BookInfo(models.Model): btitle = models.CharField(max_length=20, verbose_name='名称') bpub_date = mode

  • django自带serializers序列化返回指定字段的方法

    django orm 有个defer方法,指定模型排除的字段. 如下返回的Queryset, 排除'username', 'id'. users=models.UserInfo.objects.defer('username','id') 或users=models.UserInfo.objects.filter(...).defer('username','id') 再如下,使用django自带serializers进行序列,发现序列化的数据仍存在'username', 'id'这两个字段.

  • django rest framework serializers序列化实例

    serializers是将复杂的数据结构变成json或者xml这个格式的 serializers有以下几个作用: - 将queryset与model实例等进行序列化,转化成json格式,返回给用户(api接口). - 将post与patch/put的上来的数据进行验证. - 对post与patch/put数据进行处理. 实现序列化二个类:Serializer与ModelSerializer 比较 ModelSerializer(Serializer) 即 ModelSerializer继承了Se

  • Mybatis-Plus条件构造器select方法返回指定字段方式

    目录 条件构造器select方法返回指定字段 条件构造器select用法 实例 问题解决 Mybatis-Plus修改指定字段 通用解决方案 条件构造器select方法返回指定字段 条件构造器select用法 1.返回特定的几个字段 select(字段…) 2.排除某几个字段 select(entiyClass,predicate判断) 3.分组聚合函数 select(“聚合函数”) 搭配service的.listMaps方法,将返回的数据封装到map中避免了多余字段的返回 实例 说明 :以下代

  • Django中模型Model添加JSON类型字段的方法

    本文实例讲述了Django中模型Model添加JSON类型字段的方法.分享给大家供大家参考.具体如下: Django里面让Model用于JSON字段,添加一个JSONField自动类型如下: class JSONField(models.TextField): __metaclass__ = models.SubfieldBase description = "Json" def to_python(self, value): v = models.TextField.to_pytho

  • 使用django自带的user做外键的方法

    一.使用django自带的user做外键,可以直接在model中使用.只需导入settings模块 使用方法: 在app应用(此处是Product应用)中的models.py文件,导入settings模块 # Product / models.py from django.db import models from django.contrib.auth import settings class Product(models.Model): productName = models.CharF

  • 修改Nginx配置返回指定content-type的方法

    目录 一.我们遇到了什么问题? 二.解决方法 总结 一.我们遇到了什么问题? 今天前端的同学向我请教了一个Nginx服务配置的问题.我作为组里的底层开发,当然是对此类问题还是有信心的.因为我私下里对Nginx也是学习了一点,再不济通过丰富的google经验,解决此类配置问题也是不在话下的O(∩_∩)O.但是问题并没有我想象的那么简单,花费了我不少时间( ╯□╰ ).不多废话了,直接上需求. Nginx配置中一般根据conf/mime.types文件中配置来根据文件扩展名(文件扩展名对大小写不敏感

  • MongoDB查询操作限制返回字段的方法

    映射(projection )声明用来限制所有查询匹配文档的返回字段.projection以文档的形式列举结果集中要包含或者排除的字段.可以指定要包含的字段(例如:{field:1})或者指定要排除的字段(例如:{field:0}).默认_id是包含在结果集合中的,要从结果集中排除_id字段,需要在projection中指定排除_id字段({_id:0}).除了_id字段,不能在一个projection中联合使用包含和排除语意. 返回匹配文档的所有字段: 如果没有指定projection,fin

  • django 解决自定义序列化返回处理数据为null的问题

    在接口返回数据时,如果数据库表中查询出来的某些字段为null时,在前端需要多处理一些数据异常的情况. django可以自定义序列化返回处理,将返回的内容限制和预处理再返回到前端. 1.未处理时返回 如图上,有email.mobile这两个字段是有可以为空且默认值为null的. 2.to_representation处理 在模型序列化类增加, to_representation方法,以自定义数据处理限制 from rest_framework import serializers from .mo

  • django filter过滤器实现显示某个类型指定字段不同值方式

    1,前端样式 2,html代码 {% load asset_filter %} <div class="col-sm-2"> <select class="input-sm form-control select2 inline" name="ServiceModel"> <option value="">模块</option> {% for i in 'Ecs'|ecs_mod

随机推荐