Opened 3 years ago

Closed 2 months ago

#20705 closed New feature (fixed)

Allow customizing the email field name for PasswordResetForm

Reported by: Cloudream Owned by: mlevental
Component: contrib.auth Version: master
Severity: Normal Keywords:
Cc: Cloudream, jorgecarleitao, Aleksej Manaev, m.levental@… Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Like USERNAME_FIELD, add a similar parameter so PasswordResetForm, and other customized user model functions, do not rely on fixed name email field to send emails.

Attachments (1)

20705-initial.diff (1.9 KB) - added by Tim Graham 17 months ago.

Download all attachments as: .zip

Change History (13)

comment:1 Changed 3 years ago by Cloudream

Cc: Cloudream added

comment:2 Changed 3 years ago by Tim Graham

Summary: Set email field for PasswordResetFormAllow customizing the email field name for PasswordResetForm
Triage Stage: UnreviewedAccepted

Seems like a reasonable request.

comment:3 Changed 3 years ago by Susan Tan

I've been reading this doc for context + background: https://docs.djangoproject.com/en/1.5/topics/auth/default/#django.contrib.auth.forms.PasswordResetForm

It seems that I'll need to edit the PasswordResetForm class method located in contrib.auth.forms. In particular, L27 might needed to be changed: "email = forms.EmailField(label=_("Email"), max_length=254)"

Is there an existing similar example that I can follow? I've done a global search on USERNAME_FIELD, which returned a lot of results; I'm not sure which are the relevant files to look at.

comment:4 Changed 3 years ago by Tim Graham

This isn't about renaming the form field, but rather not assuming the "email" field on the UserModel is called "email". We could accomplish this on PasswordResetForm by passing in a parameter to the save method with the name of the field, but it would be better to get an idea of the "other customized user model functions" the OP had in mind to better determine the feasibility and design of this.

comment:5 Changed 3 years ago by jorgecarleitao

Cc: jorgecarleitao added

Doesn't the ticket #17431 solves this?

comment:6 Changed 17 months ago by Tim Graham

No, I think it's still an issue. I'll attach a patch with a sketch of the code changes.

Changed 17 months ago by Tim Graham

Attachment: 20705-initial.diff added

comment:7 Changed 3 months ago by Aleksej Manaev

Cc: Aleksej Manaev added

comment:8 Changed 3 months ago by mlevental

Cc: m.levental@… added

comment:9 Changed 3 months ago by mlevental

Owner: changed from nobody to mlevental
Status: newassigned

comment:10 Changed 3 months ago by Tim Graham

Has patch: set
Patch needs improvement: set

I left some ideas for improvement on the PR.

comment:11 Changed 3 months ago by mlevental

Patch needs improvement: unset

comment:12 Changed 2 months ago by Tim Graham <timograham@…>

Resolution: fixed
Status: assignedclosed

In 617e36dc:

Fixed #20705 -- Allowed using PasswordResetForm with user models with an email field not named 'email'.

Note: See TracTickets for help on using tickets.
Back to Top