Avoid validating dynamic field #8
Unanswered
mschoettle
asked this question in
Q&A
Replies: 2 comments
-
Good catch, I've done something very similar in the past: def is_validating(request):
return "X-Up-Validate" in request.headers Then in your form, something like this: class MakeAndModelForm(DynamicFormMixin, forms.Form):
...
model = DynamicField(
forms.ChoiceField,
choices=lambda form: form.MODEL_CHOICES[form["make"].value()],
required=lambda form: not is_validating(form.context["request"]),
) |
Beta Was this translation helpful? Give feedback.
0 replies
-
Thanks! So there are different ways to achieve it depending on the use case. I wasn't sure if going the |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Thanks for this package and especially for the HTMX and Unpoly examples. It helped me realize that Unpoly might be a better fit (in my case) given the
up-validate
mechanism without needing a separate view.When this is done, though, selecting a different make in the example causes the form to be validated. I.e., switching from "Audi" to "Toyota" causes the validation error "Select a valid choice. a1 is not one of the available choices.".
Is there any way to avoid that?
One way I thought about it, seeing the example in the official docs for [up-validate], is to handle it differently when the
X-Up-Validate
header is present:But there might be a better way to achieve this.
Beta Was this translation helpful? Give feedback.
All reactions