diff --git a/Django/mysite/db.sqlite3 b/Django/mysite/db.sqlite3
index 64c8232..e548e4d 100644
Binary files a/Django/mysite/db.sqlite3 and b/Django/mysite/db.sqlite3 differ
diff --git a/Django/mysite/polls/templates/polls/detail.html b/Django/mysite/polls/templates/polls/detail.html
index 4e1bd67..55fa300 100644
--- a/Django/mysite/polls/templates/polls/detail.html
+++ b/Django/mysite/polls/templates/polls/detail.html
@@ -1,6 +1,12 @@
-
{{ question.question_text }}
-
-{% for choice in question.choice_set.all %}
- - {{ choice.choice_text }}
-{% endfor %}
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/Django/mysite/polls/templates/polls/results.html b/Django/mysite/polls/templates/polls/results.html
new file mode 100644
index 0000000..33b67b2
--- /dev/null
+++ b/Django/mysite/polls/templates/polls/results.html
@@ -0,0 +1,9 @@
+{{ question.question_text }}
+
+
+{% for choice in question.choice_set.all %}
+ - {{ choice.choice_text }} -- {{ choice.votes }} vote{{ choice.votes|pluralize }}
+{% endfor %}
+
+
+Vote again?
\ No newline at end of file
diff --git a/Django/mysite/polls/views.py b/Django/mysite/polls/views.py
index 4e674eb..5e541a7 100644
--- a/Django/mysite/polls/views.py
+++ b/Django/mysite/polls/views.py
@@ -1,10 +1,10 @@
from django.shortcuts import get_object_or_404, render
-from django.http import HttpResponse, Http404
-from django.template import loader
+from django.http import HttpResponse, HttpResponseRedirect
+from django.urls import reverse
+from django.db.models import F
-
-from .models import Question
+from .models import Choice, Question
# Create your views here.
@@ -18,9 +18,27 @@ def detail(request, question_id):
return render(request, "polls/detail.html", {"question": question})
def results(request, question_id):
- response = "You're looking at the results of question %s."
- return HttpResponse(response % question_id)
-
+ question = get_object_or_404(Question, pk=question_id)
+ return render(request, "polls/results.html", {"question": question})
def vote(request, question_id):
- return HttpResponse("You're voting on question %s." % question_id)
\ No newline at end of file
+ question = get_object_or_404(Question, pk=question_id)
+ try:
+ selected_choice = question.choice_set.get(pk=request.POST["choice"])
+ except (KeyError, Choice.DoesNotExist):
+ # Redisplay the question voting form.
+ return render(
+ request,
+ "polls/detail.html",
+ {
+ "question": question,
+ "error_message": "You didn't select a choice.",
+ },
+ )
+ else:
+ selected_choice.votes = F("votes") + 1
+ selected_choice.save()
+ # Always return an HttpResponseRedirect after successfully dealing
+ # with POST data. This prevents data from being posted twice if a
+ # user hits the Back button.
+ return HttpResponseRedirect(reverse("polls:results", args=(question.id,)))
\ No newline at end of file