django.core 序列化器和 Django Rest Framework 序列化器之间的区别
Posted
技术标签:
【中文标题】django.core 序列化器和 Django Rest Framework 序列化器之间的区别【英文标题】:Difference between django.core serializers and Django Rest Framework serializers 【发布时间】:2019-02-19 19:20:28 【问题描述】:我现在正在学习 Django,我刚刚听说了 Django Rest Framework (DRF)。我想知道 django.core 序列化程序和 rest_framework 序列化程序有什么区别。是的,我知道 DRF 适用于 API。
【问题讨论】:
【参考方案1】:django.core
序列化器旨在将整个模型实例序列化为 XML、JSON 或 YAML,反之亦然。除了序列化之外,它们什么都不做。
DRF 的序列化器专门用于在处理来自 html 表单或 API 请求的数据时将模型实例转换为 JSON 对象。因此,序列化并不总是一个顺利或直接的过程,因为您可能会收到非法或不完整的数据,或者表单的字段可能与相应模型的字段不对应。出于这个原因,DRF 允许您创建 serializers.Serializer
的自定义子类,以便清理和验证传递给服务器的数据。这还允许您自定义数据在模型实例中的存储方式。 See the documentation here.
【讨论】:
以上是关于django.core 序列化器和 Django Rest Framework 序列化器之间的区别的主要内容,如果未能解决你的问题,请参考以下文章