def service_index(request, provider_id, service_id): provider = get_object_or_404(Provider, pk=provider_id) service = get_object_or_404(Service, pk=service_id, provider__id=provider_id) if request.method == "POST": form = ServiceForm(request.POST, instance = service) if form.is_valid(): form.save(provider=provider) return HttpResponseRedirect(reverse('provider_index', kwargs={'provider_id': provider_id})) else: form = ServiceForm(instance = service) context = {'service': service, 'form': form,} return render(request, 'service.html', context)
def service_add(request, provider_id, service_id=None): if request.method == 'POST': form = ServiceForm(request.POST) try: provider = Provider.objects.get(pk=provider_id) except Provider.DoesNotExist: provider = None if form.is_valid() and provider: form.save(provider=provider) return HttpResponseRedirect(reverse('provider_index', kwargs={'provider_id': provider_id})) else: if service_id: service = get_object_or_404(Service, pk=service_id, provider__id=provider_id) form = ServiceForm(instance = service) else: form = ServiceForm() return render(request, 'add.html', {'form': form, 'cancel': reverse('provider_index', kwargs={'provider_id': provider_id})})