Add **kwargs to is_valid and several validation methods
|Reported by:||jorgeecardona||Owned by:||nobody|
|Cc:||Triage Stage:||Design decision needed|
|Has patch:||no||Needs documentation:||no|
|Needs tests:||no||Patch needs improvement:||no|
Description (last modified by aaugustin)
I like to use forms a lot, but sometimes I have to overwrite __init__ to accept some parameters that change the behaviour of the validation, I was thinking that maybe is better just to add a way to pass some data to the validation methods of the form in order to validate it.
Imagine that I want to create a form to change the email of an user and I don't want to use an argument in the request for "username" and use the username from the session framework (I just want to avoid to send the username in the request), I will have to overwrite the __init__ of the form in order to accept "user" as an argument and store it in self.user to be used later in clean_email. Instead, if we have this new argument in is_valid is just to do: form.is_valid(user=user).
This new argument doesn't hurt anyone, and It will help a lot to some of us that use form in this way.
Change History (3)
comment:1 Changed 2 years ago by aaugustin
- Description modified (diff)
- Needs documentation unset
- Needs tests unset
- Patch needs improvement unset
comment:2 Changed 2 years ago by aaugustin
- Component changed from Uncategorized to Forms
- Triage Stage changed from Unreviewed to Design decision needed