From 403d327cae333430e857ed988f0cba7bc833a4a0 Mon Sep 17 00:00:00 2001 From: Kriti Godey Date: Fri, 19 Mar 2010 17:21:21 -0400 Subject: [PATCH] Editing a sandwich works fully. --- templates/editsandwich.html | 8 +++++++- views.py | 9 ++++++--- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/templates/editsandwich.html b/templates/editsandwich.html index 912b6bb..b90b5aa 100644 --- a/templates/editsandwich.html +++ b/templates/editsandwich.html @@ -8,11 +8,17 @@ diff --git a/views.py b/views.py index dc62977..b3ffff0 100644 --- a/views.py +++ b/views.py @@ -39,7 +39,7 @@ def add_sandwich(request): for n in y: if n.isdigit(): newsandwich.ingredients.add(Ingredient.objects.get(id=n)) - else: + elif n[:4] == 'new:' and len(n) > 4: n = n.lstrip('new:') newingredient = Ingredient(name=n, slug=SlugifyUniquely(n, Ingredient)) newingredient.save() @@ -54,6 +54,7 @@ def add_sandwich(request): def edit_sandwich(request, slug): sedit = Sandwich.objects.get(slug=slug) + ingred = sedit.ingredients.all() if request.user.is_authenticated(): if not sedit.user == request.user: return HttpResponseRedirect(reverse('all_sandwiches')) @@ -64,6 +65,8 @@ def edit_sandwich(request, slug): sedit.adjective = request.POST['adjective'] sedit.date_made = request.POST['date_made'] sedit.notes = request.POST['notes'] + for ig in sedit.ingredients.all(): + sedit.ingredients.remove(ig) if request.POST['picture']: sedit.picture = request.POST['picture'] x = request.POST['ing'] @@ -72,7 +75,7 @@ def edit_sandwich(request, slug): for n in y: if n.isdigit(): sedit.ingredients.add(Ingredient.objects.get(id=n)) - else: + elif n[:4] == 'new:' and len(n) > 4: n = n.lstrip('new:') newingredient = Ingredient(name=n, slug=SlugifyUniquely(n, Ingredient)) newingredient.save() @@ -81,7 +84,7 @@ def edit_sandwich(request, slug): return HttpResponseRedirect(sedit.get_absolute_url()) else: sform = SandwichForm(instance=sedit) - return render_to_response('editsandwich.html', {'sform': sform, 's':sedit,}, context_instance=RequestContext(request)) + return render_to_response('editsandwich.html', {'sform': sform, 's':sedit, 'prepop': ingred, }, context_instance=RequestContext(request)) else: return HttpResponseRedirect(reverse('login2')) -- 2.20.1