Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.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
Django 从一个表单插入多个模型_Django_Django Models_Django Forms - Fatal编程技术网

Django 从一个表单插入多个模型

Django 从一个表单插入多个模型,django,django-models,django-forms,Django,Django Models,Django Forms,我有5个模型,这些模型有相似的结构。前三个字段是相同的。 例如: 我想知道是否可以从一个表单中插入所有表。 我只需要在所有表中保存前3个字段id\u proveedor、anio、mes。 这是一个遗留表,没有任何关系 更新 所有模型的视图都是这样的,没有什么不同 @login_required(login_url='/login/') def CargaView(request): idp = request.GET.get('i') anio = request.GET.ge

我有5个模型,这些模型有相似的结构。前三个字段是相同的。 例如:

我想知道是否可以从一个表单中插入所有表。 我只需要在所有表中保存前3个字段id\u proveedor、anio、mes。 这是一个遗留表,没有任何关系

更新

所有模型的视图都是这样的,没有什么不同

@login_required(login_url='/login/')
def CargaView(request):
    idp = request.GET.get('i')
    anio = request.GET.get('a')
    mes = request.GET.get('m')
    if request.method == 'POST':
       r = DetalleCargaArchivo.objects.get(id_proveedor=idp,anio=anio,mes=mes)
       form = CargaForm(request.POST, instance=r)
       if form.is_valid():
          form.save()
          return HttpResponseRedirect('/monitor/')
    else:
       r = DetalleCargaArchivo.objects.get(id_proveedor=idp,anio=anio,mes=mes)
       r.usuario = request.user
       form = CargaForm(instance=r)

    return render_to_response("carga.html",
                               locals(),
                               context_instance=RequestContext(request))
我正在考虑创建一个只有三个字段的通用表单,但我不知道如何在多个模型中保存

请帮忙


提前感谢

您目前如何保存数据?你的要求非常直截了当,但你需要提供更多关于你所拥有的和努力实现的细节/代码。@GlynJackson谢谢你的回答。我更新了帖子,并复制了一个我的观点示例。所有模型都使用这样的视图。
@login_required(login_url='/login/')
def CargaView(request):
    idp = request.GET.get('i')
    anio = request.GET.get('a')
    mes = request.GET.get('m')
    if request.method == 'POST':
       r = DetalleCargaArchivo.objects.get(id_proveedor=idp,anio=anio,mes=mes)
       form = CargaForm(request.POST, instance=r)
       if form.is_valid():
          form.save()
          return HttpResponseRedirect('/monitor/')
    else:
       r = DetalleCargaArchivo.objects.get(id_proveedor=idp,anio=anio,mes=mes)
       r.usuario = request.user
       form = CargaForm(instance=r)

    return render_to_response("carga.html",
                               locals(),
                               context_instance=RequestContext(request))