串行器中的DictField – Django REST框架
在Django REST框架中,序列化的概念是将数据库数据转换为可被javascript使用的数据类型。每个序列化器都有一些将要被处理的字段(条目)。例如,如果你有一个名为Employee的类,其字段为Employee_id, Employee_name, is_admin等。那么,你就需要AutoField、CharField和BooleanField来通过Django存储和操作数据。同样的,序列化器也是以同样的原理工作的,并且拥有用于创建序列化器的字段。
本文围绕Django REST框架中序列化器的DictField展开。
DictField
DictField基本上是一个字典字段,它根据一个对象的字典来验证输入。
它有以下参数 –
- child – 一个字段实例,应该用于验证字典中的值。如果没有提供这个参数,那么映射中的值将不会被验证。
- allow_empty – 指定是否允许空的字典。
语法 –
示例 –
例如,要创建一个字段,验证字符串到字符串的映射,你可以这样写。
如何在序列化程序中使用DictField?
为了解释DictField的用法,让我们使用 “如何使用Django Rest框架创建基本API “中的相同项目设置。
现在你的项目中有一个叫做序列化器的文件,让我们创建一个以DictField为字段的序列化器。
现在让我们创建一些对象,并尝试将它们序列化,检查它们是否真的能工作,运行,-
现在,在shell中运行以下python命令