序列化器中的URL字段 – Django REST框架
在Django REST框架中,序列化的概念是将数据库数据转换为可被javascript使用的数据类型。每个序列化器都有一些将要被处理的字段(条目)。例如,如果你有一个名为Employee的类,其字段为Employee_id, Employee_name, is_admin等。那么,你就需要AutoField、CharField和BooleanField来通过Django存储和操作数据。同样的,序列化器也是以同样的原理工作的,它的字段是用来创建一个序列化器。
本文围绕Django REST框架中序列化器的URL字段展开。有两个主要字段 – URLField和SlugField。
URLField
URLField基本上是一个RegexField,根据URL匹配模式验证输入。希望得到形式为http:///
的完全合格的URLs。它的工作原理与URLField – Django模型相同。
它有以下参数 –
- allow_blank – 如果设置为True,那么空字符串应该被认为是一个有效值。如果设置为False,那么空字符串被认为是无效的,并将引发一个验证错误。默认为False。
语法 –
SlugField
SlugField是一个RegexField,它根据模式[a-zA-Z0-9_-]+验证输入。它与SlugField – Django模型相同。
语法 –
如何在序列化器中使用URL字段
为了解释URL字段的用法,让我们使用相同的项目设置–《如何使用Django Rest框架创建一个基本的API?
现在你的项目中有一个叫做序列化器的文件,让我们创建一个以URLField和SlugField为字段的序列化器。
现在让我们创建一些对象,并尝试将它们序列化,检查它们是否真的能工作,运行,-
现在,在shell中运行以下python命令