1. 程式人生 > 實用技巧 >Django中的驗證瀏覽(重置功能)--郵件找回忘記密碼

Django中的驗證瀏覽(重置功能)--郵件找回忘記密碼

驗證瀏覽  官方文件https://docs.djangoproject.com/en/3.0/topics/auth/default/

  用於使用者忘記密碼通過四個步驟找回密碼

    填寫繫結郵箱 - 傳送郵箱成功填寫訊息- 登入驗證郵箱 - 傳送密碼成功修改訊息

    Submit email form //PasswordReserView.as_view()

    Email sent success message //PasswordReserViewDoneView.as_view()   

    LINK to password Rest form in email//PasswordReserViewConfirmView.as_view()

    Password successfullyy changed message //PasswordReserView.as_view()

  -在urls.py寫入

    模板和name是固定的 不可以修改 不然內部函式找不到對應的URL

    <uidb64>是使用者編碼 <token>是Django的保護令牌  

path('reset_password',auth_views.PasswordResetView.as_view(),name='reset_password'),
path('reset_password_sent',auth_views.PasswordResetDoneView.as_view(),name='password_reset_done'),
path('reset/<uidb64>/<token>/',auth_views.PasswordResetConfirmView.as_view(),name='password_reset_confirm'),
path('reset_password_complete',auth_views.PasswordResetCompleteView.as_view(),name='password_reset_complete'),

  我們需要設定點py和Django再次配置一些電子郵件

  需要在Django中新增一些資訊以使其知道或在py中設定讓它知道傳送了電子郵件

    -設定SMTP配置 == 簡單郵件傳輸 這個讓我們知道我們要使用那個電子郵箱 郵箱密碼是什麼 因為從技術上講 Django必須登入我們的電子郵箱 然後從我們的電子郵箱中傳送電子郵件

    -在settings.py中配置

        谷歌賬號埠587

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = '*********'
EMAIL_HOST_PASSWORD = '*********'

    -然後就可以修改密碼了

    -最後再改一下前端