def reserva_new(request): form = ReservaForm() context = {'label': 'Cadastrar', 'form': form} if request.method == 'GET': pk = request.GET.get('veiculo',None) try: veiculo = Veiculo.objects.get(pk=pk) if not veiculo.disponivel: form = ReservaForm(initial={'veiculo': pk}) form.set_veiculo(Veiculo.objects.filter(pk=pk)) form.set_cliente(Cliente.objects.all(), "---------") context['form'] = form else: return HttpResponseRedirect(r('veiculo')) except: return HttpResponseRedirect(r('veiculo')) return render(request, 'reserva/reserva.html', context) form = ReservaForm(request.POST) if not form.is_valid(): context['form'] = form return render(request, 'reserva/reserva.html', context) form.save() messages.success(request, SUCCESS_MSG) return HttpResponseRedirect(r('reserva'))
def reserva_edit(request, pk): reserva = get_object_or_404(Reserva, pk=pk) if request.method == "POST": form = ReservaForm(request.POST, instance=reserva) if form.is_valid(): reserva = form.save(commit=False) reserva.save() messages.success(request, UPDATE_MSG) return HttpResponseRedirect(r('reserva')) else: form = ReservaForm(instance=reserva, initial={'veiculo': reserva.veiculo.pk}) form.set_veiculo(Veiculo.objects.filter(pk=reserva.veiculo.pk)) form.set_cliente(Cliente.objects.filter(pk=reserva.cliente.pk)) context = {'label': 'Editar', 'form': form} return render(request, 'reserva/reserva.html', context)