def EditarCobro(request,empleado_slug=None,cliente_slug=None,cobro_slug=None):
if not request.user.is_staff or not request.user.is_superuser:
raise Http404
cliente = Cliente.objects.get(slug=cliente_slug)
instance = Cobro.objects.get(slug=cobro_slug)
cobro_form = CobroForm(request.POST or None,instance=instance)
ServicioFormSet = inlineformset_factory(Cobro,Servicio, form=ServicioForm,formset=RequiredBaseInlineFormSet, max_num=10, extra=1)
servicio_formset = ServicioFormSet(request.POST or None, prefix='servicio', instance=instance)
if cobro_form.is_valid() and servicio_formset.is_valid():
cobro = cobro_form.save()
servicio = servicio_formset.save(commit=False)
for serv in servicio:
serv.cobro = cobro
serv.save()
messages.add_message(request, messages.INFO, 'El cobro se ha editado correctamente')
return HttpResponseRedirect(cobro.get_absolute_url())
return render_to_response(
'cobranzas/nuevo_cobro.html', {
'form': cobro_form,
'formset': servicio_formset,
'cliente': cliente,
}, context_instance = RequestContext(request)
)
评论列表
文章目录