DRF序列化器中,给字段起别名__source__

DRF序列化器中,给字段起别名__source__

在djangorestframework中,当我们在反序列化和序列化时,如果出现需求和字段名不匹配时可以通过给字段起别名的方法解决

字段中的通用属性source可以连接到数据库中的字段

from rest_framework import serializers

from goods.models import SPUSpecification


class SPUSpecificationSerializer(serializers.ModelSerializer):
    '''
        商品规格表序列化器
    '''
    # source参数,指可以连接数据库字段
    goods = serializers.StringRelatedField(read_only=True,source='spu')
    goods_id = serializers.IntegerField(source='spu_id')

    class Meta:
        model=SPUSpecification
        fields='__all__'
  • 数据库中的字段名为spu,可以通过source指定连接字段名。(只能用于序列化)

  • { 
      "goods": "Apple MacBook Pro 笔记本",
      "goods_id": 1
    }
    

你可能感兴趣的:(Django)