Promocja!

DJANGO 5 PRAKTYCZNE TWORZENIE APLIKACJI INTERNETOWYCH W PYTHONIE

Pierwotna cena wynosiła: 149.00zł.Aktualna cena wynosi: 134.10zł.

Na stanie

SPIS TREŚCI

Słowo wstępne

O autorze

O recenzencie

O czytelnikach wersji beta

Przedmowa

Rozdział 1. Utworzenie aplikacji bloga

Instalacja Pythona
Tworzenie środowiska wirtualnego w Pythonie
Instalacja Django
Instalowanie Django za pomocą pip
Ogólne informacje na temat frameworka Django
Główne komponenty frameworka
Architektura Django
Nowe funkcjonalności w Django 5
Tworzenie pierwszego projektu
Stosowanie początkowych migracji bazy danych
Uruchamianie serwera programistycznego
Ustawienia projektu
Projekty i aplikacje
Utworzenie aplikacji
Tworzenie modeli danych dla bloga
Utworzenie modelu Post
Dodawanie pól daty i godziny
Definiowanie domyślnej kolejności sortowania
Dodawanie indeksu bazy danych
Aktywacja aplikacji
Dodawanie pola stanu
Dodanie relacji wiele do jednego
Tworzenie i stosowanie migracji
Tworzenie witryny administracyjnej dla modeli
Tworzenie superużytkownika
Witryna administracyjna Django
Dodawanie modeli do witryny administracyjnej
Personalizacja sposobu wyświetlania modeli
Dodawanie liczby aspektów do filtrów
Praca z obiektami QuerySet i menedżerami
Tworzenie obiektów
Aktualizowanie obiektów
Pobieranie obiektów
Filtrowanie obiektów
Korzystanie z różnych metod dopasowywania pól
Łączenie filtrów w łańcuch
Wykluczanie obiektów
Sortowanie obiektów
Ograniczanie wynikowych obiektów QuerySet
Zliczanie obiektów
Sprawdzanie, czy obiekt istnieje
Usuwanie obiektów
Złożone dopasowania z wykorzystaniem obiektów Q
Kiedy następuje określenie zawartości kolekcji QuerySet?
Więcej informacji o obiektach QuerySet
Utworzenie menedżerów modelu
Przygotowanie widoków listy i szczegółów
Utworzenie widoków listy i szczegółów
Korzystanie ze skrótu get_object_or_404
Dodanie wzorców adresów URL do widoków
Utworzenie szablonów dla widoków
Tworzenie szablonu bazowego
Utworzenie szablonu listy postów
Uruchomienie aplikacji
Tworzenie szablonu szczegółów posta
Cykl żądanie-odpowiedź
Polecenia zarządzające używane w tym rozdziale
Podsumowanie
Zasoby dodatkowe

Rozdział 2. Usprawnianie bloga i dodanie funkcjonalności społecznościowych

Przegląd funkcjonalności
Kanoniczne adresy URL dla modeli
Tworzenie dla postów adresów URL przyjaznych dla SEO
Modyfikowanie wzorców adresów URL
Modyfikowanie widoków
Modyfikowanie kanonicznego adresu URL dla postów
Dodanie stronicowania
Dodanie stronicowania do widoku listy postów
Tworzenie szablonu stronicowania
Obsługa błędów stronicowania
Użycie widoków opartych na klasach
Po co korzystać z widoków opartych na klasach?
Użycie widoku opartego na klasie do wyświetlania listy postów
Polecanie postów przez e-mail
Tworzenie formularzy w Django
Obsługa formularzy w widokach
Wysyłanie wiadomości e-mail w Django
Korzystanie ze zmiennych środowiskowych
Wysyłanie wiadomości e-mail w widokach
Renderowanie formularzy w szablonach
Utworzenie systemu komentarzy
Tworzenie modelu komentarzy
Dodawanie modeli do witryny administracyjnej
Utworzenie formularzy na podstawie modeli
Obsługa klasy ModelForm w widokach
Tworzenie szablonów formularza komentarza
Dodawanie komentarzy do widoku szczegółów posta
Dodawanie komentarzy do szablonu szczegółów posta
Uproszczone szablony do renderowania pól formularzy
Podsumowanie
Dodatkowe zasoby

Rozdział 3. Rozbudowa aplikacji bloga

Przegląd funkcjonalności
Implementacja systemu tagowania za pomocą modułu django-taggit
Pobieranie postów według podobieństwa
Utworzenie własnych filtrów i znaczników szablonu
Utworzenie własnych znaczników szablonu
Utworzenie tagu szablonu typu simple_tag
Tworzenie znacznika szablonu typu inclusion_tag
Tworzenie znacznika szablonu, który zwraca kolekcję QuerySet
Utworzenie własnych filtrów szablonu
Tworzenie filtra szablonu obsługującego składnię Markdown
Dodanie mapy witryny
Utworzenie kanału wiadomości dla postów bloga
Dodanie do bloga wyszukiwania pełnotekstowego
Instalacja Dockera
Instalacja PostgreSQL
Zrzucanie istniejących danych
Przełączanie bazy danych w projekcie
Ładowanie danych do nowej bazy danych
Proste wyszukiwania
Wyszukiwanie w wielu polach
Utworzenie widoku wyszukiwania
Stemming i ranking wyników
Stemming i usuwanie słów ze stoplisty dla różnych języków
Wagi zapytań
Wyszukiwanie z podobieństwem trygramu
Podsumowanie
Rozszerzanie projektu z wykorzystaniem sztucznej inteligencji
Dodatkowe zasoby

Rozdział 4. Utworzenie witryny społecznościowej

Przegląd funkcjonalności
Utworzenie projektu witryny społecznościowej
Rozpoczęcie pracy nad aplikacją społecznościową
Użycie frameworka uwierzytelniania w Django
Utworzenie widoku logowania
Użycie wbudowanych widoków uwierzytelniania w Django
Widoki logowania i wylogowania
Widoki zmiany hasła
Widoki odzyskiwania hasła
Rejestracja użytkownika i profile użytkownika
Rejestracja użytkownika
Rozbudowa modelu User
Instalowanie modułu Pillow i udostępnianie plików multimedialnych
Tworzenie migracji dla modelu Profile
Podsumowanie
Dodatkowe zasoby

Rozdział 5. Implementacja uwierzytelniania za pomocą witryn społecznościowych

Przegląd funkcjonalności
Wymagania techniczne
Użycie frameworka messages
Implementacja własnego backendu uwierzytelniania
Uniemożliwianie użytkownikom korzystania z istniejącego adresu e-mail
Dodanie do witryny uwierzytelnienia za pomocą innej witryny społecznościowej
Uruchomienie serwera programistycznego za pośrednictwem HTTPS
Uwierzytelnianie za pomocą serwisu Google
Tworzenie profili dla użytkowników rejestrujących się za pomocą uwierzytelniania społecznościowego
Podsumowanie
Dodatkowe zasoby

Rozdział 6. Udostępnianie treści w witrynie internetowej

Przegląd funkcjonalności
Utworzenie witryny internetowej do kolekcjonowania obrazów
Utworzenie modelu Image
Zdefiniowanie relacji typu „wiele do wielu”
Rejestracja modelu Image w witrynie administracyjnej
Umieszczanie treści pochodzącej z innych witryn internetowych
Usunięcie zawartości pól formularza
Instalowanie biblioteki Requests
Nadpisanie metody save() egzemplarza ModelForm
Utworzenie bookmarkletu za pomocą JavaScript
Utworzenie szczegółowego widoku obrazu
Utworzenie miniatur za pomocą modułu easy-thumbnails
Dodawanie asynchronicznych operacji za pomocą JavaScript
Załadowanie JavaScript w modelu DOM
Ataki CSRF w żądaniach HTTP w JavaScript
Wykonywanie żądań HTTP za pomocą JavaScript
Dodanie do listy obrazów nieskończonego stronicowania
Podsumowanie
Dodatkowe zasoby

Rozdział 7. Śledzenie działań użytkownika

Przegląd funkcjonalności
Utworzenie systemu obserwacji
Utworzenie relacji typu „wiele do wielu” za pomocą modelu pośredniego
Utworzenie widoków listy i szczegółów dla profilu użytkownika
Dodanie działań obserwowania i rezygnacji z obserwowania użytkownika za pomocą JavaScript
Opracowanie strumienia aktywności aplikacji
Użycie frameworka contenttypes
Dodanie do modelu relacji generycznych
Uniknięcie powielonych działań w strumieniu aktywności
Dodanie działania użytkownika do strumienia aktywności
Wyświetlanie strumienia aktywności
Optymalizacja kolekcji QuerySet dotyczącej powiązanych obiektów
Tworzenie szablonów dla działań użytkowników
Użycie sygnałów dla denormalizowanych zliczeń
Praca z sygnałami
Definiowanie klas konfiguracyjnych aplikacji
Korzystanie z paska narzędzi Django Debug Toolbar
Instalacja paska narzędzi Django Debug Toolbar
Panele paska narzędzi Django Debug Toolbar
Polecenia paska narzędzi Django Debug Toolbar
Zliczanie wyświetleń obrazu za pomocą bazy danych Redis
Instalacja bazy danych Redis
Użycie bazy danych Redis z Pythonem
Przechowywanie widoków obrazów w bazie danych Redis
Przechowywanie rankingu w bazie danych Redis
Kolejne kroki z bazą danych Redis
Podsumowanie
Rozszerzanie projektu przy użyciu sztucznej inteligencji
Dodatkowe zasoby

Rozdział 8. Utworzenie sklepu internetowego

Przegląd funkcjonalności
Utworzenie projektu sklepu internetowego
Utworzenie modeli katalogu produktów
Rejestracja modeli katalogu w witrynie administracyjnej
Utworzenie widoków katalogu
Utworzenie szablonów katalogu
Utworzenie koszyka na zakupy
Użycie frameworka sessions Django
Ustawienia sesji
Wygaśnięcie sesji
Przechowywanie koszyka na zakupy w sesji
Utworzenie widoków koszyka na zakupy
Utworzenie procesora kontekstu dla bieżącego koszyka na zakupy
Rejestracja zamówień klienta
Utworzenie modeli zamówienia
Dołączenie modeli zamówienia do witryny administracyjnej
Utworzenie zamówień klienta
Zadania asynchroniczne
Wykorzystywanie zadań asynchronicznych
Wątki robocze, kolejki komunikatów i brokery komunikatów
Podsumowanie
Dodatkowe zasoby

Rozdział 9. Zarządzanie płatnościami i zamówieniami

Przegląd funkcjonalności
Integracja bramki płatności
Utworzenie konta Stripe
Instalowanie biblioteki Pythona obsługi serwisu Stripe
Dodanie do projektu obsługi serwisu Stripe
Budowanie procesu płatności
Testowanie płatności
Korzystanie z webhooków do otrzymywania powiadomień o płatnościach
Odwoływanie się do płatności Stripe w zamówieniach
Wdrożenie do produkcji
Eksport zamówień do plików CSV
Dodanie własnych działań do witryny administracyjnej
Rozbudowa witryny administracyjnej za pomocą własnych widoków
Dynamiczne generowanie faktur w formacie PDF
Instalacja WeasyPrint
Utworzenie szablonu PDF
Renderowanie plików w formacie PDF
Wysyłanie dokumentów PDF za pomocą poczty elektronicznej
Podsumowanie
Dodatkowe zasoby

Rozdział 10. Rozbudowa sklepu internetowego

Przegląd funkcjonalności
Utworzenie systemu kuponów
Utworzenie modeli kuponu
Zastosowanie kuponu w koszyku na zakupy
Zastosowanie kuponu w zamówieniu
Zastosowanie kuponów w sesji Stripe Checkout
Dodawanie kuponów do zamówień w serwisie administracyjnym oraz do faktur w formacie PDF
Utworzenie silnika rekomendacji produktów
Rekomendacja produktów na podstawie wcześniejszych transakcji
Podsumowanie
Dodatkowe zasoby

Rozdział 11. Internacjonalizacja sklepu internetowego

Przegląd funkcjonalności
Internacjonalizacja za pomocą Django
Ustawienia internacjonalizacji i lokalizacji
Polecenia przeznaczone do zarządzania internacjonalizacją
Instalowanie zestawu narzędzi gettext
Jak dodać tłumaczenie do projektu Django?
W jaki sposób Django określa bieżący język?
Przygotowanie projektu do internacjonalizacji
Tłumaczenie kodu Pythona
Tłumaczenie standardowe
Tłumaczenie leniwe
Tłumaczenia zawierające zmienne
Liczba mnoga w tłumaczeniach
Tłumaczenie własnego kodu
Tłumaczenie szablonów
Znacznik szablonu {% translate %}
Znacznik szablonu {% blocktranslate %}
Tłumaczenie szablonów sklepu internetowego
Użycie interfejsu do tłumaczeń o nazwie Rosetta
Tłumaczenia niejednoznaczne
Wzorce adresów URL dla internacjonalizacji
Dodanie prefiksu języka do wzorców adresów URL
Tłumaczenie wzorców adresów URL
Umożliwienie użytkownikowi zmiany języka
Tłumaczenie modeli za pomocą django-parler
Instalacja django-parler
Tłumaczenie pól modelu
Integracja tłumaczeń w witrynie administracyjnej
Utworzenie migracji dla tłumaczeń modeli
Korzystanie z tłumaczeń w kolekcjach QuerySet
Adaptacja widoków dla tłumaczeń
Lokalizacja formatów
Użycie modułu django-localflavor do weryfikacji pól formularza
Rozszerzanie projektu przy użyciu sztucznej inteligencji
Podsumowanie
Dodatkowe zasoby

Rozdział 12. Budowa platformy e-learningu

Przegląd funkcjonalności
Utworzenie platformy e-learningu
Obsługa plików multimedialnych
Utworzenie modeli kursu
Rejestracja modeli w witrynie administracyjnej
Użycie fikstur w celu dostarczenia początkowych danych dla modeli
Utworzenie modeli dla zróżnicowanej treści
Wykorzystanie dziedziczenia modeli
Utworzenie modeli treści
Utworzenie własnych pól modelu
Dodawanie porządkowania do modułów i obiektów treści
Dodanie widoków uwierzytelniania
Dodanie systemu uwierzytelniania
Utworzenie szablonów uwierzytelniania
Podsumowanie
Dodatkowe zasoby

Rozdział 13. Tworzenie systemu zarządzania treścią

Przegląd funkcjonalności
Utworzenie systemu zarządzania treścią
Utworzenie widoków opartych na klasach
Użycie domieszek w widokach opartych na klasach
Praca z grupami i uprawnieniami
Zarządzanie modułami kursu i treścią
Użycie zbiorów formularzy dla modułów kursów
Dodanie treści do modułów kursów
Zarządzanie modułami i treścią
Zmiana kolejności modułów i treści
Używanie domieszek z pakietu django-braces
Podsumowanie
Dodatkowe zasoby

Rozdział 14. Renderowanie i buforowanie treści

Przegląd funkcjonalności
Wyświetlanie katalogu kursów
Dodanie rejestracji uczestnika
Utworzenie widoku rejestracji uczestnika
Zapisanie się na kurs
Renderowanie treści kursu
Uzyskanie dostępu do treści kursu
Renderowanie różnych rodzajów treści
Użycie frameworka buforowania
Dostępne backendy buforowania
Instalacja Memcached
Instalowanie obrazu Docker mechanizmu Memcached
Instalacja powiązania Memcached dla języka Python
Ustawienia buforowania we frameworku Django
Dodanie Memcached do projektu
Poziomy buforowania
Użycie niskopoziomowego API buforowania
Sprawdzanie żądań pobierających dane z bufora za pomocą paska narzędzi Django Debug Toolbar
Niskopoziomowe buforowanie na podstawie danych dynamicznych
Buforowanie fragmentów szablonu
Buforowanie widoków
Użycie bufora dla poszczególnych witryn
Backend buforowania oparty na bazie danych Redis
Monitorowanie bazy danych Redis za pomocą Django Redisboard
Podsumowanie
Dodatkowe zasoby

Rozdział 15. Utworzenie API

Przegląd funkcjonalności
Utworzenie API typu RESTful
Instalacja frameworka REST Django
Definiowanie serializatorów
Klasy parserów i renderowania formatów
Utworzenie widoków listy i szczegółowego
Wykorzystanie API
Rozszerzanie serializatorów
Dodawanie pól do serializatorów
Implementacja w serializatorach pól obliczanych za pomocą metod
Dodawanie stronicowania do widoków
Tworzenie serializatora kursów
Serializacja relacji
Opracowanie zagnieżdżonych serializatorów
Utworzenie kolekcji ViewSet i routerów
Tworzenie własnych widoków API
Obsługa uwierzytelniania
Implementacja podstawowego uwierzytelniania
Określenie uprawnień do widoków
Dołączanie dodatkowych operacji do kolekcji ViewSet
Tworzenie niestandardowych uprawnień
Serializacja treści kursu
Wykorzystanie API RESTful
Podsumowanie
Dodatkowe zasoby

Rozdział 16. Budowanie serwera czatu

Przegląd funkcjonalności
Utworzenie aplikacji czatu
Implementacja widoku pokoju czatu
Komunikacja w czasie rzeczywistym w Django za pomocą frameworka Channels
Aplikacje asynchroniczne z wykorzystaniem ASGI
Cykl żądanie-odpowiedź z wykorzystaniem frameworka Channels
Instalacja frameworków Channels i Daphne
Pisanie konsumenta
Routing
Implementacja klienta WebSocket
Warstwa kanału komunikacyjnego
Kanały komunikacyjne i grupy
Konfiguracja warstwy kanału komunikacyjnego z wykorzystaniem Redis
Aktualizacja konsumenta w celu rozgłaszania wiadomości
Dodawanie kontekstu do wiadomości
Modyfikacja konsumenta w celu uzyskania pełnej asynchroniczności
Utrwalanie wiadomości w bazie danych
Utworzenie modelu dla wiadomości czatu
Dodanie modelu Message do witryny administracyjnej
Zapisywanie wiadomości w bazie danych
Wyświetlanie historii czatu
Integracja aplikacji czatu z istniejącymi widokami
Podsumowanie
Dodatkowe zasoby

Rozdział 17. Wdrożenie

Tworzenie środowiska produkcyjnego
Zarządzanie ustawieniami dla wielu środowisk
Korzystanie z systemu Docker Compose
Instalacja Docker Compose za pośrednictwem Docker Desktop
Tworzenie pliku Dockerfile
Dodanie wymagań Pythona
Tworzenie pliku Docker Compose
Konfigurowanie usługi PostgreSQL
Stosowanie migracji bazy danych i tworzenie superużytkownika
Konfigurowanie usługi Redis
Serwowanie Django za pomocą WSGI i NGINX
Korzystanie z uWSGI
Konfiguracja uWSGI
Korzystanie z NGINX
Konfiguracja NGINX
Korzystanie z nazwy hosta
Udostępnianie zasobów statycznych i multimedialnych
Zabezpieczanie witryny za pomocą protokołu SSL/TLS
Sprawdzenie gotowości projektu do wdrożenia do produkcji
Konfiguracja projektu do obsługi SSL/TLS
Utworzenie certyfikatu SSL/TLS
Konfiguracja serwera NGINX do wykorzystania SSL/TLS
Przekierowywanie ruchu HTTP do HTTPS
Konfiguracja serwera Daphne do wykorzystania z frameworkiem Django Channels
Wykorzystanie bezpiecznych połączeń dla gniazd WebSocket
Uwzględnienie Daphne w konfiguracji NGINX
Utworzenie własnej warstwy middleware
Utworzenie oprogramowania middleware do obsługi subdomeny
Implementacja własnych poleceń administracyjnych
Podsumowanie
Rozszerzanie projektu przy użyciu sztucznej inteligencji
Dodatkowe zasoby

Autor

ISBN

978-83-289-1882-5

Liczba stron

Rok wydania

Wydawca

Opinie

Na razie nie ma opinii o produkcie.

Napisz pierwszą opinię o „DJANGO 5 PRAKTYCZNE TWORZENIE APLIKACJI INTERNETOWYCH W PYTHONIE”

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *