首页 > 解决方案 > 在序列化程序中使用不代表模型对象的主键是最佳实践吗?

问题描述

我正在 Django 中为 post REST API 创建一个端点。我把post body的参数放在一个class里面,内部处理,但是资深开发者说还是用serializer比较好。我创建了一个序列化程序,一切正常,直到同一个高级说我必须添加一个PrimaryKeyRelatedField.

那是我开始困惑的时候,因为这个序列化程序不是针对模型,而是针对请求对象的主体(有 3 个参数,一个强制和两个可选),当我将强制参数添加为 PrimaryKeyRelatedField 时,我开始接收在validated_data 上一个空的OrderedDict()

我的问题是:

  1. 在不代表模型的序列化程序中有一个 PrimaryKeyRelatedField 有意义吗?
  2. 如果它有意义,我怎样才能让它工作(或者为什么当我制作一个字段主键时,我收到一个空字典?)

PS:我确保将正确的数据发送到端点,所以这不是接收空 OrderedDict 的情况,因为我没有发送必填字段

标签: djangoserializationdjango-rest-framework

解决方案


推荐阅读