def upvote_choice(request, pk): if request.method == "POST": choice = Choice.objects.get(pk=pk) ip = request.META['REMOTE_ADDR'] votes = Vote.objects.filter(ip=ip, poll=choice.poll) if votes: return HttpResponse('2') # 2 means already voted v = Vote.objects.create(ip=ip, poll=choice.poll) choice.votes += 1 choice.save() p[pk].trigger('upvote', {}) return HttpResponse() raise Http404
def add_poll(request): if request.method == "POST": poll_form = PollForm(request.POST) choice_formset = ChoiceFormSet(request.POST, prefix='choice') if poll_form.is_valid() and choice_formset.is_valid(): poll = poll_form.save() for form in choice_formset: choice = form.save(commit=False) choice.poll = poll choice.save() request.user.message_set.create(message = 'Successfully created poll.') return HttpResponseRedirect(reverse('poll_index')) else: poll_form = PollForm() choice_formset = ChoiceFormSet(prefix='choice') return direct_to_template(request, 'poll/add_poll.html', {'poll_form':poll_form, 'choice_formset':choice_formset})