From 5d246ee0ba80e58e7dcdd562779d84ff2d62ce68 Mon Sep 17 00:00:00 2001 From: nik <83764985+n11ik@users.noreply.github.com> Date: Wed, 19 Feb 2025 11:37:13 +0100 Subject: [PATCH] display additional information in city detail view (#166) Co-authored-by: Nik Sauer --- app/cities/views.py | 11 ++++++++--- app/templates/cities/detail.html | 4 +++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/app/cities/views.py b/app/cities/views.py index 2ca110b..66962b9 100644 --- a/app/cities/views.py +++ b/app/cities/views.py @@ -7,10 +7,12 @@ from main.enums import Dimension, SensorModel, OutputFormat, Precision, Order def CitiesDetailView(request, pk): - api_url = f"{settings.API_URL}/city/current?city_slug={pk}" - print(api_url) + api_url = f"{settings.API_URL}/city/current" + params = { + "city_slug": {pk}, + } try: - response = requests.get(api_url) + response = requests.get(api_url, params=params) response.raise_for_status() # Prüft, ob die Anfrage erfolgreich war station_data = response.json() # Daten im JSON-Format @@ -25,6 +27,7 @@ def CitiesDetailView(request, pk): 'timezone': properties.get('timezone'), 'coordinates': geometry.get('coordinates'), 'last_updated': properties.get('time'), + 'station_count': properties.get('station_count'), 'values': [] } @@ -36,6 +39,8 @@ def CitiesDetailView(request, pk): city_info['values'].append({ 'dimension': translated_dimension, 'value': value.get("value"), + 'value_count': value.get('value_count'), + 'station_count': value.get('station_count'), 'unit': Dimension.get_unit(dimension_id) }) diff --git a/app/templates/cities/detail.html b/app/templates/cities/detail.html index b5f9a1a..2594462 100644 --- a/app/templates/cities/detail.html +++ b/app/templates/cities/detail.html @@ -28,7 +28,8 @@

{{ city.name }}

-

Aktuelle Durchschnittswerte

+

Aktuell sind {{ city.station_count }} Stationen aktiv

+

Durchschnittswerte der letzten Stunde

{% for value in city.values %} {% if value.dimension in "PM1.0,PM2.5,PM10.0,Humidity,Temperature" %}
@@ -36,6 +37,7 @@

Aktuelle Durchschnittswerte

{{ value.dimension }}

{{ value.value|floatformat:2 }} {{ value.unit }}

+
Berechnung aus {{ value.value_count }} Werten von {{ value.station_count }} Stationen