如何使用DRF的ModelSerializer创建Django用户

伊达尼夫

在django中,创建用户的流程与通常的Model实例创建不同。您需要调用create_user(),这是的方法BaseUserManager

由于django REST框架的流程是restore_object()then然后执行的save_object(),因此无法ModelSerializer在通用的create API端点中简单地使用来创建Users ,而不会弄乱您的方法。

有什么干净的方法可以解决这个问题?还是至少使用Django的内置管道使其工作?

编辑:

需要特别注意的是,django.contrib.auth.authenticate如果实例只是使用User.objects.create()and not创建的,一旦尝试使用它对创建的用户实例进行身份验证就会失败,这特别不起作用.create_user()

伊达尼夫

最终,我重写了序列化器的restore_object方法,并确保随后使用来处理发送的密码instance.set_password(password),如下所示:

def restore_object(self, attrs, instance=None):
    if not instance:
        instance = super(RegisterationSerializer, self).restore_object(attrs, instance)
    instance.set_password(attrs.get('password'))
    return instance

谢谢大家的帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用 DRF 序列化器创建包含必需 OneToOneField 的 Django 模型实例

来自分类Dev

使用用户DRF的外键创建对象

来自分类Dev

如何使用 DRF 配置流 django

来自分类Dev

Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

来自分类Dev

使用序列化程序Django(DRF)创建对象

来自分类Dev

Django-如何使用相同的用户名和密码创建用户?

来自分类Dev

如何限制用户访问权限以查看/修改其他用户使用 Django 创建的对象

来自分类Dev

使用django-simple-history和DRF时,如何创建额外的操作来访问对象的历史记录?

来自分类Dev

在Django中使用ModelSerializer验证选择字段

来自分类Dev

如何创建评分用户django

来自分类Dev

如何使用一个请求DRF创建多个对象

来自分类Dev

使用明文密码创建的Django用户

来自分类Dev

允许用户使用Django表单创建“约会”

来自分类Dev

创建时的Django Rest Framework ModelSerializer Set属性

来自分类Dev

Django Rest Framework扩展用户模型,如何创建用户

来自分类Dev

创建用户后,如何将用户与Django模型关联?

来自分类Dev

如何在DRF中使用django-filter

来自分类Dev

Django:使用自定义用户模型创建超级用户

来自分类Dev

如何使用户能够删除和编辑在Django中创建的对象?

来自分类Dev

如何在Django中使用单一表单创建用户和个人资料?

来自分类Dev

如何使用户能够删除和编辑在Django中创建的对象?

来自分类Dev

如何在Django中使用带有JsonResponse的AJAX创建新用户?

来自分类Dev

如何将用户与Django drf中的发布请求相关联

来自分类Dev

Django - 如何在 DRF 中向某些用户授予自定义权限?

来自分类Dev

如何使用CloudFormation创建OpsWorks用户?

来自分类Dev

如何使用OAuth2创建用户?

来自分类Dev

如何使用tortiosegit在git中创建用户?

来自分类Dev

如何使用pubnub允许用户创建群聊

来自分类Dev

如何创建内存使用受限的用户?

Related 相关文章

  1. 1

    如何使用 DRF 序列化器创建包含必需 OneToOneField 的 Django 模型实例

  2. 2

    使用用户DRF的外键创建对象

  3. 3

    如何使用 DRF 配置流 django

  4. 4

    Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

  5. 5

    使用序列化程序Django(DRF)创建对象

  6. 6

    Django-如何使用相同的用户名和密码创建用户?

  7. 7

    如何限制用户访问权限以查看/修改其他用户使用 Django 创建的对象

  8. 8

    使用django-simple-history和DRF时,如何创建额外的操作来访问对象的历史记录?

  9. 9

    在Django中使用ModelSerializer验证选择字段

  10. 10

    如何创建评分用户django

  11. 11

    如何使用一个请求DRF创建多个对象

  12. 12

    使用明文密码创建的Django用户

  13. 13

    允许用户使用Django表单创建“约会”

  14. 14

    创建时的Django Rest Framework ModelSerializer Set属性

  15. 15

    Django Rest Framework扩展用户模型,如何创建用户

  16. 16

    创建用户后,如何将用户与Django模型关联?

  17. 17

    如何在DRF中使用django-filter

  18. 18

    Django:使用自定义用户模型创建超级用户

  19. 19

    如何使用户能够删除和编辑在Django中创建的对象?

  20. 20

    如何在Django中使用单一表单创建用户和个人资料?

  21. 21

    如何使用户能够删除和编辑在Django中创建的对象?

  22. 22

    如何在Django中使用带有JsonResponse的AJAX创建新用户?

  23. 23

    如何将用户与Django drf中的发布请求相关联

  24. 24

    Django - 如何在 DRF 中向某些用户授予自定义权限?

  25. 25

    如何使用CloudFormation创建OpsWorks用户?

  26. 26

    如何使用OAuth2创建用户?

  27. 27

    如何使用tortiosegit在git中创建用户?

  28. 28

    如何使用pubnub允许用户创建群聊

  29. 29

    如何创建内存使用受限的用户?

热门标签

归档