Django RestFramework BaseSerializer

BaseSerializer类,该类可用于轻松支持可选序列化和反序列化样式。

此类实现与Serializer类具有相同的基本API:

  • .data - 返回传出基元表示形式。
  • .is_valid() - 反序列化和验证传入数据。
  • .validated_data - 返回已验证的传入数据。
  • .errors - 返回验证期间的任何错误。
  • .save() - 将已验证的数据持久化到对象实例中。

根据您希望序列化程序类支持的功能,可以重写四种方法:

  • .to_representation() - 重写此项以支持读操作的序列化。
  • .to_internal_value() - 重写此项以支持写操作的反序列化。
  • .create().update() - 重写其中一个或两个以支持保存实例。

因为该类提供与Serializer类相同的接口,您可以将它与现有的基于类的通用视图一起使用,就像对常规视图一样Serializer或者ModelSerializer

这样做的唯一区别是BaseSerializer类不会在可浏览API中生成HTML表单。这是因为它们返回的数据不包括允许每个字段呈现为合适的HTML输入的所有字段信息。

猜你喜欢

转载自blog.csdn.net/weixin_43336281/article/details/108512884
今日推荐