首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在django-rest框架中使用.to_representation()和.to_internal_value?

在django-rest框架中使用.to_representation()和.to_internal_value?
EN

Stack Overflow用户
提问于 2015-12-10 07:48:28
回答 1查看 27.4K关注 0票数 37

.to_representation().to_internal_valueserializers中做什么

如果我将数据传递给序列化程序,该数据是否首先抛出to_representation()

这两个有什么用?

EN

回答 1

Stack Overflow用户

发布于 2015-12-10 07:55:21

如果要创建自定义字段,则需要对字段进行子类,然后重写.to_representation().to_internal_value()方法中的一个或两个方法。这两种方法用于在初始数据类型和可序列化的原始数据类型之间进行转换。基本数据类型通常是数字、字符串、布尔值、日期/时间/日期时间或无的任何数据类型。它们也可能是任何列表或字典,比如只包含其他原始对象的对象。可能支持其他类型,这取决于您正在使用的呈现器。 调用.to_representation()方法将初始数据类型转换为基本的、可序列化的数据类型。 调用to_internal_value()方法将原始数据类型还原到其内部python表示中。如果数据无效,此方法应引发serializers.ValidationError。 请注意,版本2.x中存在的WritableField类不再存在。如果字段支持数据输入,则应子类字段并重写to_internal_value()

参考:

  1. http://www.django-rest-framework.org/api-guide/fields/#custom-fields
  2. framework/serializers.py#L417
票数 31
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34196331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档