免责声明:我是基于DRF /类的视图新手。
我遇到的情况是我的API的客户端无法知道资源的ID,但它确实知道该资源的唯一标识符(其名称)。
当客户端通过POST向第一个发送具有外键的单独资源时,这是一个问题。例如......客户端发送以下数据(信号为FK):
{"signal_name": "signal1", "value": 5}
但模型预计:
{"signal": 1, "value": 5}
当self.CONTENT
到达我的自定义帖子方法时,它已经过验证并且为空。
那么,在数据得到验证/拒绝之前,我在哪里/如何交换数据?
我是否需要自定义验证方法?
感谢您的任何建议!
答案 0 :(得分:0)
我尝试搞乱资源上的字段和字段外属性,但无法将其验证为错误。所以我最后只是将'signal_name'字段中的字段添加到模型中,并将其与post方法中的信号id匹配。 (值得庆幸的是,在这种情况下,我们有一个非强制性的FK信号,所以我可以等待给出一个信号值)
我会回来查看几天,看看是否有人知道如何更好地做到这一点。另外,感谢Pizza和Tom的建议!