首页 > 解决方案 > Django密码重置功能视图

问题描述

使用基于类的视图会隐藏 django 代码中的所有复杂性,所以我更喜欢使用基于函数的视图,然后再转向基于类的视图。

除了使用 django 的基于类的视图之外,您是否有机会编写自定义密码重置视图来更改用户密码?我可以使用基于类的视图来做到这一点,但理解它是一个问题,因为所有的复杂性都被隐藏了。如果有人有一篇文章的链接,详细解释了这一点,我会很高兴,因为谷歌什么也没给我。

标签: pythondjango

解决方案


既然可以使用 Django 内置的 User 模型,为什么还需要一个单独的函数来更改用户的密码。

from django.contrib.auth.models import User
user = User.objects.get(username='your_user_name')
user.set_password('your_password')
user.save()

练习 DRY(不要重复自己)。如果它是内置的并且可行,您应该使用它而不是重新发明它。

干杯,

参考:Django 身份验证系统


推荐阅读