[英]Form.is_valid in Django
I have a problem with a form validation in Django. 我在Django中进行表单验证时遇到问题。 I have this in views.py: 我在views.py中有这个:
def n_visita(request, id_c):
if request.method == 'POST':
formulario = FormularioVisita(data=request.POST)
if formulario.is_valid():
···
save_form.save()
return HttpResponseRedirect('/')
else:
formulario = FormularioVisita(idc=id_c)
···
return...
And this in forms.py: 这在forms.py中:
class FormularioVisita(ModelForm):
class Meta:
model = Visita
def __init__(self, idc=None, *args, **kwargs):
super(FormularioVisita, self).__init__(*args, **kwargs)
self.fields["IdCita"].queryset = Citas.objects.filter(id=idc,Dia=date.today(),espera=True,estado=True)
This returns a single registry (because I give the "id"), show that option in the "select", all works fine. 这将返回一个注册表(因为我给出了“ id”),在“ select”中显示了该选项,所以一切正常。 But when I do click in "Save" button Django say "Choose a valid option" and not show me one option in "select". 但是当我点击Django的“保存”按钮时,说“选择一个有效的选项”,而不是在“选择”中显示一个选项。 What can I do? 我能做什么? I need change the field to show the unique option of the queryset returns? 我需要更改字段以显示queryset返回的唯一选项吗?
在POST块中实例化表单时,也需要传递idc。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.