From 830d17b6b037c5100cc0fd95219bfe41135fd327 Mon Sep 17 00:00:00 2001 From: Viktoriya Hristova Date: Wed, 8 Apr 2020 12:02:21 +0300 Subject: [PATCH] Add some simple views --- coronavirus/urls.py | 1 + .../templates/countries/cases_by_country.html | 20 +++++++++++++++++++ countries/templates/countries/countries.html | 9 +++++++++ countries/urls.py | 9 +++++++++ countries/views.py | 18 ++++++++++++++++- 5 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 countries/templates/countries/cases_by_country.html create mode 100644 countries/templates/countries/countries.html create mode 100644 countries/urls.py diff --git a/coronavirus/urls.py b/coronavirus/urls.py index e733dbb..af28a61 100644 --- a/coronavirus/urls.py +++ b/coronavirus/urls.py @@ -17,6 +17,7 @@ from django.urls import include, path urlpatterns = [ + path('countries/', include('countries.urls')), path('stats/', include('stats.urls')), path('admin/', admin.site.urls), ] diff --git a/countries/templates/countries/cases_by_country.html b/countries/templates/countries/cases_by_country.html new file mode 100644 index 0000000..e902596 --- /dev/null +++ b/countries/templates/countries/cases_by_country.html @@ -0,0 +1,20 @@ +{% if cases %} + + + + + + + + {% for daily_report in cases %} + + + + + + + {% endfor %} +
DateCasesDeath casesRecoveries
{{ daily_report.date }}{{ daily_report.cases }}{{ daily_report.deaths }}{{ daily_report.recoveries }}
+{% else %} +

No cases are available.

+{% endif %} diff --git a/countries/templates/countries/countries.html b/countries/templates/countries/countries.html new file mode 100644 index 0000000..7a386c6 --- /dev/null +++ b/countries/templates/countries/countries.html @@ -0,0 +1,9 @@ +{% if countries %} + +{% else %} +

No countries are available.

+{% endif %} diff --git a/countries/urls.py b/countries/urls.py new file mode 100644 index 0000000..be18a81 --- /dev/null +++ b/countries/urls.py @@ -0,0 +1,9 @@ +from django.urls import path + +from . import views + + +urlpatterns = [ + path('', views.countries_list, name='countries_list'), + path('country//', views.country_cases, name='cases'), +] diff --git a/countries/views.py b/countries/views.py index 91ea44a..4cfe80e 100644 --- a/countries/views.py +++ b/countries/views.py @@ -1,3 +1,19 @@ +from django.http import Http404 from django.shortcuts import render -# Create your views here. +from .models import Country, DailyReport + + +def countries_list(request): + countries = Country.objects.all() + return render(request, 'countries/countries.html', {'countries': countries}) + + +def country_cases(request, country): + try: + country = Country.objects.get(name=country) + cases = DailyReport.objects.filter(country=country).order_by('date') + except: + raise Http404("Country does not exist") + return render(request, 'countries/cases_by_country.html', {'cases': cases}) +