Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 表单数据未将数据保存到数据库-Django_Python_Django_Database_Forms - Fatal编程技术网

Python 表单数据未将数据保存到数据库-Django

Python 表单数据未将数据保存到数据库-Django,python,django,database,forms,Python,Django,Database,Forms,我无法将表单数据保存到数据库,每次尝试时,都会出现不同的错误 这是我的表格模型 class Meta: model = Asistente exclude = ('evento',) widgets = {'nombre': forms.TextInput(attrs={'class': 'form-control'}), 'telefono': forms.TextInput(attrs={'clas

我无法将表单数据保存到数据库,每次尝试时,都会出现不同的错误

这是我的表格模型

    class Meta:
        model = Asistente
        exclude = ('evento',)
        widgets = {'nombre': forms.TextInput(attrs={'class': 'form-control'}),
                   'telefono': forms.TextInput(attrs={'class': 'form-control'}),
                   'num_asistentes': forms.TextInput(attrs={'class': 'form-control'})} 
这是我的观点的代码

    def post(self, request, evento_id):
        evento = Evento.objects.filter(id=evento_id).first()
        form = RegistroAsistenteForm(request.POST)

        if form.is_valid():
            registro_asistente = form.save(commit=False)
            registro_asistente.evento.pk = evento_id
            registro_asistente.save()
        else:
            form = RegistroAsistenteForm()

        return HttpResponseRedirect('/evento-reg/' + str(evento_id) + '/asistente/')```

There are times when I don't get any error, it just don't do anything.
你的观点应该是正确的

def post(request, evento_id):
    if request.method == 'POST':
       evento = Evento.objects.filter(id=evento_id).first()
       form = RegistroAsistenteForm(request.POST)
       if form.is_valid():
           registro_asistente.evento = evento
           form.save()
           #to get the id u can us form.instance.id
           return redirect('to what ever u want from you urls')

    else:
       form = RegistroAsistenteForm()

    return HttpResponseRedirect('/evento-reg/' + str(evento_id) + '/asistente/')```

这是在视图中收集您想要执行的操作,它不需要self

,因为您总是重定向,即使表单无效。仅当is_valid为true时才应重定向。但实际上,你根本不应该写你自己的帖子方法;使用一个表单视图来为您执行此操作。我现在发现这个错误
post()为参数'evento\u id'获取了多个值
您在evento\u id中传递了什么