0

I am using default Django auth_views + Gmail for password reset. Things works fine for me.

During production if there is error happen with accessing email server ,users get response as internal server error 500. Because Gmail prevent user access.

Instead of internal server error, How can we let users know that the server can't reach email server ?

accounts/login/ [name='login']
accounts/logout/ [name='logout']
accounts/password_change/ [name='password_change']
accounts/password_change/done/ [name='password_change_done']
accounts/password_reset/ [name='password_reset']
accounts/password_reset/done/ [name='password_reset_done']
accounts/reset/<uidb64>/<token>/ [name='password_reset_confirm']
accounts/reset/done/ [name='password_reset_complete']
Anoop K George
  • 1,605
  • 12
  • 40

1 Answers1

1

Instead of creating a global error 500 handler, you should create a custom view for the accounts/password_reset/ [name='password_reset'] endpoint which inherits from the parent endpoint but places a Try/Catch exception on E-Mail errors and renders a custom couldn't send E-Mail page

Aayush Agrawal
  • 1,354
  • 1
  • 12
  • 24