Commit 6b83accc by Patryk Czarnik

odczyt czasu - wersja z szablonem

parent 59bc72b1
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title>Tytuł strony</title>
</head>
<body>
<h1>Informacja o bieżącym czasie</h1>
<p>Zaraz powiem, która jest godzina…</p>
<p>{{dt}}</p>
<p>Data: {{data}}</p>
<p>Czas: {{czas}}</p>
<p>Wersja sformatowana: <strong>{{fmt}}</strong></p>
<p>Mamy rok {{dt.year}}, jest teraz godzina {{dt.hour}}.</p>
</body>
</html>
from django.http import HttpResponse from django.http import HttpRequest, HttpResponse
from django.shortcuts import render from django.shortcuts import render
from datetime import datetime from datetime import datetime
...@@ -14,7 +14,7 @@ def podaj_czas(request): ...@@ -14,7 +14,7 @@ def podaj_czas(request):
# prosty sposób, aby zwrócić treść w formacie HTML # prosty sposób, aby zwrócić treść w formacie HTML
# po prostu tworzymy HTML w funkcji Pythona i wstawiamy do HttpResponse # po prostu tworzymy HTML w funkcji Pythona i wstawiamy do HttpResponse
def czas_html(request): def czas_html(request:HttpRequest) -> HttpResponse:
godzina = datetime.now().strftime('%H:%M:%S') godzina = datetime.now().strftime('%H:%M:%S')
html = f'''<html><head> html = f'''<html><head>
<title>Która godzina</title> <title>Która godzina</title>
...@@ -25,3 +25,22 @@ def czas_html(request): ...@@ -25,3 +25,22 @@ def czas_html(request):
</html> </html>
''' '''
return HttpResponse(html, content_type='text/html;charset=UTF-8') return HttpResponse(html, content_type='text/html;charset=UTF-8')
# Bardziej profesjonalnym sposobem tworzeia treści HTML jest używanie szablonów (template)
# czyli zewnętrznych plików, które zawierają treść do wysłania, ale pozwalają także
# wstawić wartości pochodzące z aplikacji.
def czas_szablon(request:HttpRequest) -> HttpResponse:
data_i_czas = datetime.now()
data = data_i_czas.strftime('%Y-%m-%d')
czas = data_i_czas.strftime('%H:%M:%S')
fmt = data_i_czas.strftime('%d.%m.%Y %H:%M')
return render(request, 'wyswietl_czas.html',
context={'dt': data_i_czas,
'data': data,
'czas': czas,
'fmt': fmt,
'wynik': 2+3})
...@@ -25,4 +25,5 @@ urlpatterns = [ ...@@ -25,4 +25,5 @@ urlpatterns = [
path("hello", hello), path("hello", hello),
path("czas", podaj_czas), path("czas", podaj_czas),
path("czas_html", czas_html), path("czas_html", czas_html),
path("czas_szablon", czas_szablon),
] ]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment