在更新和设置新权限(drf)期间向序列化数据添加密码值



我使用的是django-rest框架和DjanoModelPermissions,我已经序列化了默认的用户模型,以获取有关用户及其权限的信息,管理员也可以根据前端的要求更改权限(一些JavaScript(或使一些用户成为超级用户。

问题是,当管理员试图用新数据执行PUT语句时,它会失败。在用户模型中,密码是必填字段。我已经得到了用户的身份验证令牌(这不起作用(,我还没有从用户模型中序列化密码,我不想。

我试图在保存之前附加序列化数据,通过使用user.objects.get(username=data_from_serializer_data(.password获取值来添加另一个字段"password",但我无法向序列化程序数据添加额外的字段(password字段(。

实现我目标的方法是什么?如何在序列化程序数据中添加密码值(在后端(,然后发送完整的数据进行更新。

此外,我在某个地方读到serializer.data是一个无法编辑的属性。如果是真的,我还需要做什么才能完成任务?

感谢

您可以在创建CustomUser并覆盖现有序列化程序后在中添加get_serializer_class。

最新更新