jesteś tutaj
219
Budowanie aplikacji WWW
@app.route(‘/entry’)
def entry_page() -> ‘html’:
return render_template(‘entry.html’,
the_title=’Witamy na stronie internetowej search4letters!’)
Przygotowanie do uruchomienia kodu szablonu
Aż prosi się, aby otworzyć wiersz poleceń, a następnie uruchomić najnowszą wersję
naszego kodu. Jednak z wielu różnych powodów aplikacja nie zacznie od razu działać.
Szablon bazowy odwołuje się do arkusza stylów hf.css, a plik ten powinien się znajdować
w
folderze o nazwie static (podrzędnym wobec folderu zawierającego Twój kod). Poniżej
znajdziesz
fragment szablonu bazowego, w którym występuje to odwołanie.
...
<title>{{ the_title }}</title>
<link rel=”stylesheet” href=”static/hf.css” />
</head>
...
Plik
hf.css
powinien
istnieć
(i
znajdować się
w folderze static).
base.html entry.html results.html
static
templates
webapp
vsearch4web.py
hf.css
Ten folder zawiera
wszystkie pliki
naszej
aplikacji
WWW.
Ten plik zawiera kod naszej
aplikacji WWW
(przedstawiony
na
końcu poprzedniej strony).
To jest arkusz
stylów
(umieszczony
w
osobnym
folderze).
Wszystkie szablony
naszej
aplikacji
przechowywane
tutaj.
Nie krępuj się i korzystaj z kopii pliku CSS wchodzącego w skład archiwum kodów związanych z niniejszą
książką (adres, pod którym znajdziesz to archiwum, został podany na marginesie tej strony). Pamiętaj tylko,
aby pobrany arkusz stylów umieścić w folderze o nazwie static.
Poza
tym framework Flask wymaga, aby Twoje szablony były przechowywane w folderze o nazwie templates,
który
— podobnie jak folder static powinien być folderem podrzędnym wobec folderu zawierającego Twój
kod.
Wśród plików związanych z tym rozdziałem znajdziesz również wszystkie niezbędne szablony, dzięki
czemu możesz oszczędzić sobie przepisywania całego tego kodu HTML!
Przy założeniu, że plik z kodem Twojej aplikacji WWW umieszczony jest w folderze
webapp, poniżej
możesz
zobaczyć strukturę folderów, która jest Ci potrzebna do uruchomienia najnowszej wersji programu
vsearch4web.py.
Jeśli tego jeszcze nie zrobiłeś,
pobierz szablony i arkusze
stylów spod adresu
ftp://ftp.helion.pl/przyklady/
pytrg2.zip.
220
Rozdział 5.
Uruchom tę aplikację WWW
Jesteśmy gotowi, aby testowo uruchomić aplikację
Jeśli przygotowałeś już wszystko, co trzeba tzn. pobrałeś arkusz stylów i szablony, a także
zaktualizowałeś swój kod jesteś gotów, aby ponownie wziąć w obroty swoją aplikację WWW
wykorzystującą framework Flask.
Poprzednia wersja kodu prawdopodobnie nadal działa w wierszu poleceń Twojego systemu
operacyjnego.
Wróć teraz do tego okna i użyj skrótu klawiszowego
Ctrl+C, aby zatrzymać poprzednią
wersję aplikacji. Następnie naciśnij klawisz
strzałki skierowanej w górę, aby przywołać ostatnie
polecenie, zmień nazwę pliku, który ma zostać uruchomiony, a na koniec naciśnij klawisz
Enter. W wyniku tego powinna zostać uruchomiona nowa wersja Twojego kodu, a na ekranie
powinny pojawić się standardowe komunikaty stanu.
...
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [13/Jun/2017 23:23:19] ”GET / HTTP/1.1” 200 -
127.0.0.1 - - [13/Jun/2017 23:23:29] ”GET /search4 HTTP/1.1” 200 -
^
C
C:\Users\lsuma\Desktop\Python\R5\webapp>py -3 vsearch4web.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Ponownie
zatrzymaj
aplikację WWW...
Uruchom swój nowy kod
(znajdujący się w pliku
vsearch4web.py).
Nowy kod wystartował i działa;
aplikacja oczekuje teraz na
żądania do obsłużenia.
...
127.0.0.1 - - [14/Jun/2017 21:53:47] ”GET /entry HTTP/1.1” 200 -
127.0.0.1 - - [14/Jun/2017 21:53:47] ”GET /static/hf.css HTTP/1.1” 200 -
Ty żądasz
formularza
HTML...
...a Twoja
przeglądarka żąda
arkusza stylów.
Przypomnij sobie, że nowa wersja aplikacji w dalszym ciągu obsługuje URL-e
/
oraz
/search4
, dlatego gdy korzystając z przeglądarki internetowej, zażądasz któregoś z nich,
odpowiedzi będą takie same jak te, które zostały przedstawione we wcześniejszej części
tego rozdziału. Jeśli jednak użyjesz tego URL-a:
http://127.0.0.1:5000/entry
w Twojej przeglądarce internetowej pojawi się odpowiedź w postaci wyrenderowanego
formularza HTML (który został pokazany na początku kolejnej strony). W wierszu
poleceń powinny zostać wyświetlone dwa dodatkowe wiersze stanu: jeden związany
z żądaniem
/entry
oraz drugi związany z żądaniem Twojej przeglądarki dotyczącym
arkusza stylów
hf.css.
jesteś tutaj
221
Budowanie aplikacji WWW
Wygląda
dobrze.
Ups! To nie
może być nic
dobrego.
Jazda próbna
Poniżej możesz zobaczyć, co pojawi się w oknie przeglądarki internetowej, gdy wprowadzisz w jej polu adresu URL
http://127.0.0.1:5000/entry i naciśniesz klawisz
Enter
.
Raczej nie uda nam się zdobyć za tę stronę żadnej nagrody dla najlepszych projektów WWW,
ale wygląda ona poprawnie i przypomina to, co naszkicowaliśmy wcześniej na naszej serwetce.
Niestety, gdy wprowadzisz frazę i (opcjonalnie) zmienisz zestaw liter do wyszukania, a następnie
klikniesz przycisk
Zrób to!, ujrzysz stronę błędu, która przedstawiona została poniżej.
Lekka wpadka, nie sądzisz? Zobaczmy, co się tu dzieje.

Get Python Rusz głową! Wydanie II now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.