def make_bid(request, item_slug): item = SaleItem.objects.get(slug=item_slug) context_dict = {'item': item} try: highestbid = UserBid.objects.filter(sale_item=item).order_by('-offer_price')[0] context_dict['highestbid'] = highestbid min_offer = highestbid.offer_price + 1 context_dict['min_offer'] = min_offer except: pass try: userbid = UserBid.objects.get(user=request.user,sale_item=item) except UserBid.DoesNotExist: userbid = UserBid(user=request.user,sale_item=item) if request.method == 'POST': form = UserBidForm(request.POST, instance=userbid) if form.is_valid(): form.save() notify.send(request.user, recipient=item.owner.user, verb=u' made an offer on your item: ', target=item) for ubid in item.userbid_set.all(): if ubid.user == request.user: continue notify.send(request.user, recipient=ubid.user, verb=u' bid on an item that you bid on', target=item) return redirect('shop:item', item.slug) else: print form.errors context_dict['form'] = form else: form = UserBidForm() context_dict['form'] = form return render(request, 'shop/makebid.html', context_dict)