Flask_Tworzenie_aplikacji_internetowych_w_Pythonie_Wydanie_II_flask2.pdf

(2073 KB) Pobierz
Tytuł oryginału: Flask Web Development: Developing Web Applications with Python, 2nd Edition
Tłumaczenie: Wojciech Moch
ISBN: 978-83-283-6383-0
© 2020 Helion SA
Authorized Polish translation of the English edition of Flask Web Development 2E ISBN 9781491991732 ©
2018 Miguel Grinberg
This translation is published and sold by permission of O’Reilly Media, Inc.,
which owns or controls all rights to publish and sell the same.
The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Flask Web Development,
the cover image, and related trade dress are trademarks of O’Reilly Media, Inc.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi
bądź towarowymi ich właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/flask2
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Wstęp ....................................................................................................................... 11
Część I . Wprowadzenie do Flaska
1. Instalacja .................................................................................................................. 21
Tworzenie katalogu aplikacji
Wirtualne środowiska
Tworzenie wirtualnego środowiska w Pythonie 3
Tworzenie wirtualnego środowiska w Pythonie 2
Praca z wirtualnymi środowiskami
Instalowanie pakietów Pythona za pomocą narzędzia pip
22
22
23
23
24
25
2. Podstawowa struktura aplikacji ................................................................................ 27
Inicjalizacja
Trasy i funkcje widoku
Kompletna aplikacja
Roboczy serwer WWW
Trasy dynamiczne
Tryb debugowania
Opcje wiersza polecenia
Cykl żądanie – odpowiedź
Kontekst aplikacji i żądania
Przesyłanie żądania
Obiekt żądania
Hooki w żądaniach
Odpowiedzi
Rozszerzenia Flaska
27
27
29
29
31
32
33
35
35
36
37
37
38
40
5
Kup książkę
Poleć książkę
3. Szablony ................................................................................................................... 41
Mechanizm szablonów Jinja2
Renderowanie szablonów
Zmienne
Struktury sterujące
Integracja Bootstrapa z Flask-Bootstrap
Niestandardowe strony błędów
Łącza
Pliki statyczne
Lokalizowanie dat i czasu za pomocą pakietu Flask-Moment
41
42
43
44
45
48
51
51
52
4. Formularze internetowe ............................................................................................ 57
Konfiguracja
Klasy formularzy
Renderowanie formularzy HTML
Obsługa formularzy w funkcjach widoku
Przekierowania i sesje użytkownika
Wyświetlanie komunikatów
57
58
59
61
64
66
5. Bazy danych .............................................................................................................. 69
Bazy danych SQL
Bazy danych NoSQL
SQL czy NoSQL?
Frameworki baz danych w Pythonie
Zarządzanie bazą danych za pomocą Flask-SQLAlchemy
Definicja modelu
Relacje
Operacje na bazach danych
Tworzenie tabel
Wstawianie wierszy
Modyfikowanie wierszy
Usuwanie wierszy
Zapytanie o wiersze
Wykorzystanie bazy danych w funkcjach widoku
Integracja z powłoką Pythona
Migrowanie baz danych za pomocą pakietu Flask-Migrate
Tworzenie repozytorium migracji
Tworzenie skryptu migracji
Aktualizacja bazy danych
Dodawanie kolejnych migracji
69
70
71
71
73
74
75
77
77
78
79
79
79
81
82
83
83
84
85
86
6
Spis treści
Poleć książkę
Kup książkę
6. Wiadomości e-mail ................................................................................................... 87
Obsługa e-mail za pomocą rozszerzenia Flask-Mail
Wysyłanie wiadomości e-mail z powłoki Pythona
Integrowanie wiadomości e-mail z aplikacją
Asynchroniczne wysyłanie e-maila
87
88
89
90
7. Struktura dużej aplikacji ............................................................................................ 93
Struktura projektu
Opcje konfiguracji
Pakiet aplikacji
Korzystanie z fabryki aplikacji
Implementacja funkcji aplikacji w projekcie
Skrypt aplikacji
Plik wymagań
Testy jednostkowe
Konfiguracja bazy danych
Uruchamianie aplikacji
93
94
96
96
97
100
100
101
103
103
Część II. Przykład: Aplikacja do blogowania społecznościowego
8. Uwierzytelnianie użytkownika .................................................................................107
Rozszerzenia uwierzytelnienia dla Flaska
Bezpieczeństwo hasła
Haszowanie haseł za pomocą pakietu Werkzeug
Tworzenie schematu uwierzytelnienia
Uwierzytelnianie użytkownika za pomocą Flask-Login
Przygotowywanie modelu User na potrzeby logowania
Ochrona tras
Dodawanie formularza logowania
Logowanie użytkowników
Wylogowywanie użytkowników
Jak działa Flask-Login?
Testowanie
Rejestrowanie nowego użytkownika
Tworzenie formularza rejestracji użytkownika
Rejestracja nowych użytkowników
Potwierdzenie konta
Generowanie tokenów potwierdzających za pomocą pakietu itsdangerous
Wysyłanie wiadomości e-mail z potwierdzeniem
Zarządzanie kontem
107
107
108
110
112
112
113
114
115
117
117
118
119
119
121
122
122
124
127
Spis treści
Kup książkę
7
Poleć książkę
Zgłoś jeśli naruszono regulamin