Facebook - konwersja
Pobierz fragment

Django 3. Praktyczne tworzenie aplikacji sieciowych. Wydanie III - ebook

Wydawnictwo:
Data wydania:
23 lutego 2021
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
89,00

Django 3. Praktyczne tworzenie aplikacji sieciowych. Wydanie III - ebook

Twórz od podstaw rozbudowane i niezawodne aplikacje webowe w Pythonie

Django jest potężnym frameworkiem służącym do tworzenia aplikacji internetowych w Pythonie. Pozwala na pełne wykorzystywanie zalet tego języka, takich jak przejrzystość, elastyczność, wszechstronność i łatwość uczenia się. Wykorzystywanie Django do budowania aplikacji w Pythonie jest atrakcyjną możliwością zarówno dla początkujących, jak i zaawansowanych programistów. Aby jednak zapewnić tworzonym projektom odpowiednią, profesjonalną jakość, trzeba się nauczyć rozwiązywać problemy powstające podczas tworzenia aplikacji internetowych, stosować najlepsze praktyki programistyczne, a także skutecznie wdrażać i testować aplikację.

To trzecie wydanie praktycznego przewodnika po budowie aplikacji internetowych. Krok po kroku opisano w nim wszystkie istotne elementy procesu projektowania i wdrażania aplikacji: bloga, witryny społecznościowej, sklepu internetowego oraz platformy e-learningowej. Zawarte tu szczegółowe wskazówki pomogą integrować popularne technologie, usprawniać aplikacje z wykorzystaniem technik AJAX, tworzyć API REST oraz konfigurować środowisko produkcyjne dla projektów Django. Dzięki tej książce niepostrzeżenie opanujesz najistotniejsze zasady pracy w Django - i czym prędzej zaczniesz od podstaw budować praktyczne projekty. Nowością w tym wydaniu jest rozdział poświęcony projektowaniu serwera czatu z wykorzystaniem serwera Django Channels.

W tej książce:

  • praktyczna strona projektowania aplikacji internetowych
  • podstawy Django, w tym ORM, szablony, adresy URL, formularze i uwierzytelnianie
  • funkcje zaawansowane: niestandardowe pola modelu i oprogramowanie pośredniczące
  • wykorzystanie technik AJAX, system płatności, CMS, API RESTful
  • integracja projektu z takimi technologiami jak Redis, RabbitMQ, PostgreSQL i Channels
  • wdrażanie projektów Django za pomocą NGINX, uWSGI i Daphne

Django - wypróbowany framework dla profesjonalnych projektantów!

Spis treści

 

O autorze 12

 

O recenzentach 13

Przedmowa 15

Rozdział 1. Utworzenie aplikacji bloga 21

  • Instalacja Django 22
    • Utworzenie odizolowanego środowiska Pythona 23
    • Instalowanie Django za pomocą pip 23
  • Tworzenie pierwszego projektu 24
    • Uruchamianie serwera programistycznego 25
    • Ustawienia projektu 27
    • Projekty i aplikacje 28
    • Utworzenie aplikacji 28
  • Projekt schematu danych dla bloga 30
    • Aktywacja aplikacji 32
    • Tworzenie i stosowanie migracji 32
  • Tworzenie witryny administracyjnej dla modeli 34
    • Tworzenie superużytkownika 34
    • Witryna administracyjna Django 34
    • Dodawanie modeli do witryny administracyjnej 35
    • Personalizacja sposobu wyświetlania modeli 37
  • Praca z obiektami QuerySet i menedżerami 39
    • Tworzenie obiektów 39
    • Aktualizowanie obiektów 40
    • Pobieranie obiektów 41
    • Usunięcie obiektu 42
    • Kiedy następuje określenie zawartości kolekcji QuerySet? 42
    • Utworzenie menedżerów modelu 42
  • Przygotowanie widoków listy i szczegółów 44
    • Utworzenie widoków listy i szczegółów 44
    • Dodanie wzorców adresów URL do widoków 45
    • Kanoniczne adresy URL dla modeli 47
  • Utworzenie szablonów dla widoków 47
  • Dodanie stronicowania 50
  • Użycie widoków opartych na klasach 52
  • Podsumowanie 54

Rozdział 2. Usprawnienie bloga za pomocą funkcji zaawansowanych 55

  • Współdzielenie postów przy użyciu wiadomości e-mail 56
    • Tworzenie formularzy w Django 56
    • Obsługa formularzy w widokach 57
    • Wysyłanie wiadomości e-mail w Django 59
    • Generowanie formularza w szablonie 61
  • Utworzenie systemu komentarzy 65
    • Budowanie modelu 65
    • Utworzenie formularza na podstawie modelu 67
    • Obsługa klasy ModelForm w widoku 67
    • Dodanie komentarzy do szablonu szczegółów posta 69
  • Dodanie funkcjonalności tagów 72
  • Pobieranie podobnych postów 77
  • Podsumowanie 80

Rozdział 3. Rozbudowa aplikacji bloga 81

  • Utworzenie własnych filtrów i znaczników szablonu 82
    • Utworzenie własnych znaczników szablonu 82
    • Utworzenie własnych filtrów szablonu 87
  • Dodanie mapy witryny 89
  • Utworzenie kanału wiadomości dla postów bloga 92
  • Dodanie do bloga wyszukiwania pełnotekstowego 95
    • Instalacja PostgreSQL 95
    • Proste wyszukiwania 96
    • Wyszukiwanie w wielu polach 97
    • Utworzenie widoku wyszukiwania 97
    • Stemming i ranking wyników 100
    • Wagi zapytań 101
    • Wyszukiwanie z podobieństwem trygramu 101
    • Inne silniki wyszukiwania pełnotekstowego 102
  • Podsumowanie 102

Rozdział 4. Utworzenie witryny społecznościowej 103

  • Utworzenie projektu witryny społecznościowej 104
    • Rozpoczęcie pracy nad aplikacją społecznościową 104
  • Użycie frameworka uwierzytelniania w Django 105
    • Utworzenie widoku logowania 106
    • Użycie widoków uwierzytelniania w Django 111
    • Widoki logowania i wylogowania 112
    • Widoki zmiany hasła 117
    • Widoki zerowania hasła 119
  • Rejestracja użytkownika i profile użytkownika 124
    • Rejestracja użytkownika 124
    • Rozbudowa modelu User 127
    • Użycie frameworka komunikatów 133
  • Implementacja własnego mechanizmu uwierzytelniania 135
  • Dodanie do witryny uwierzytelnienia za pomocą innej witryny społecznościowej 137
    • Uruchomienie serwera programistycznego za pośrednictwem HTTPS 139
    • Uwierzytelnienie za pomocą serwisu Facebook 140
    • Uwierzytelnienie za pomocą serwisu Twitter 145
    • Uwierzytelnienie za pomocą serwisu Google 148
  • Podsumowanie 153

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

  • Utworzenie witryny internetowej do kolekcjonowania obrazów 156
    • Utworzenie modelu Image 156
    • Zdefiniowanie relacji typu "wiele do wielu" 158
    • Rejestracja modelu Image w witrynie administracyjnej 158
  • Umieszczanie treści pochodzącej z innych witryn internetowych 159
    • Usunięcie zawartości pól formularza 160
    • Nadpisanie metody save() egzemplarza ModelForm 160
    • Utworzenie bookmarkletu za pomocą jQuery 165
  • Utworzenie szczegółowego widoku obrazu 172
  • Utworzenie miniatury za pomocą easy-thumbnails 174
  • Dodanie akcji AJAX za pomocą jQuery 175
    • Wczytanie jQuery 176
    • CSRF w żądaniach AJAX 177
    • Wykonywanie żądań AJAX za pomocą jQuery 178
  • Utworzenie własnych dekoratorów dla widoków 182
  • Dodanie stronicowania AJAX do widoków listy 183
  • Podsumowanie 187

Rozdział 6. Śledzenie działań użytkownika 189

  • Utworzenie systemu obserwacji 189
    • Utworzenie relacji typu "wiele do wielu" za pomocą modelu pośredniego 190
    • Utworzenie widoków listy i szczegółowego dla profilu użytkownika 193
    • Utworzenie widoku AJAX pozwalającego na obserwację użytkowników 197
  • Budowa aplikacji z ogólnym strumieniem aktywności 199
    • Użycie frameworka contenttypes 200
    • Dodanie do modelu relacji generycznych 201
    • Uniknięcie powielonych akcji w strumieniu aktywności 203
    • Dodanie akcji użytkownika do strumienia aktywności 204
    • Wyświetlanie strumienia aktywności 205
    • Optymalizacja kolekcji QuerySet dotyczącej powiązanych obiektów 206
    • Tworzenie szablonów dla akcji 207
  • Użycie sygnałów dla denormalizowanych zliczeń 209
    • Praca z sygnałami 209
    • Definiowanie klas konfiguracyjnych aplikacji 211
  • Użycie bazy danych Redis do przechowywania różnych elementów widoków 213
    • Instalacja bazy danych Redis 214
    • Użycie bazy danych Redis z Pythonem 215
    • Przechowywanie różnych elementów widoków w bazie danych Redis 216
    • Przechowywanie rankingu w bazie danych Redis 217
    • Kolejne kroki z bazą danych Redis 220
  • Podsumowanie 220

Rozdział 7. Utworzenie sklepu internetowego 221

  • Utworzenie projektu sklepu internetowego 222
    • Utworzenie modeli katalogu produktów 223
    • Rejestracja modeli katalogu w witrynie administracyjnej 225
    • Utworzenie widoków katalogu 226
    • Utworzenie szablonów katalogu 228
  • Utworzenie koszyka na zakupy 232
    • Użycie sesji Django 232
    • Ustawienia sesji 233
    • Wygaśnięcie sesji 234
    • Przechowywanie koszyka na zakupy w sesji 234
    • Utworzenie widoków koszyka na zakupy 238
    • Utworzenie procesora kontekstu dla bieżącego koszyka na zakupy 245
  • Rejestracja zamówień klienta 247
    • Utworzenie modeli zamówienia 247
    • Dołączenie modeli zamówienia w witrynie administracyjnej 249
    • Utworzenie zamówień klienta 250
  • Wykonywanie zadań asynchronicznych za pomocą Celery 254
    • Instalacja Celery 254
    • Instalacja RabbitMQ 254
    • Dodanie Celery do projektu 255
    • Dodawanie do aplikacji zadań asynchronicznych 256
    • Monitorowanie Celery 258
  • Podsumowanie 258

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

  • Integracja bramki płatności 259
    • Tworzenie konta sandbox serwisu Braintree 260
    • Instalowanie modułu Pythona Braintree 261
    • Integracja bramki płatności 262
    • Testowanie płatności 269
    • Wdrożenie do produkcji 271
  • Eksport zamówień do plików CSV 271
    • Dodanie własnych akcji do witryny administracyjnej 272
  • Rozbudowa witryny administracyjnej za pomocą własnych widoków 274
  • Dynamiczne generowanie rachunków w formacie PDF 278
    • Instalacja WeasyPrint 278
    • Utworzenie szablonu PDF 279
    • Generowanie pliku w formacie PDF 280
    • Wysyłanie dokumentów PDF za pomocą wiadomości e-mail 282
  • Podsumowanie 285

Rozdział 9. Rozbudowa sklepu internetowego 287

  • Utworzenie systemu kuponów 287
    • Utworzenie modeli kuponu 288
    • Zastosowanie kuponu w koszyku na zakupy 290
    • Zastosowanie kuponu w zamówieniu 295
  • Internacjonalizacja i lokalizacja projektu 297
    • Internacjonalizacja za pomocą Django 298
    • Przygotowanie projektu do internacjonalizacji 300
    • Tłumaczenie kodu Pythona 301
    • Tłumaczenie szablonów 306
    • Użycie interfejsu do tłumaczeń o nazwie Rosetta 310
    • Opcja fuzzy 312
    • Wzorce adresów URL dla internacjonalizacji 313
    • Umożliwienie użytkownikowi zmiany języka 315
    • Tłumaczenie modeli za pomocą django-parler 316
    • Format lokalizacji 324
    • Użycie modułu django-localflavor do weryfikacji pól formularza 324
  • Utworzenie silnika rekomendacji produktu 326
    • Rekomendacja produktu na podstawie wcześniejszych transakcji 326
  • Podsumowanie 333

Rozdział 10. Budowa platformy e-learningu 335

  • Utworzenie platformy e-learningu 335
  • Utworzenie modeli kursu 336
    • Rejestracja modeli w witrynie administracyjnej 338
    • Użycie fikstur w celu dostarczenia początkowych danych dla modeli 339
  • Utworzenie modeli dla zróżnicowanej treści 341
    • Wykorzystanie dziedziczenia modelu 342
    • Utworzenie modeli treści 344
    • Utworzenie własnych kolumn modelu 346
    • Dodawanie porządkowania do modułów i obiektów treści 348
  • Utworzenie systemu zarządzania treścią 352
    • Dodanie systemu uwierzytelniania 352
    • Utworzenie szablonów uwierzytelniania 352
    • Utworzenie widoków opartych na klasach 355
    • Użycie domieszek w widokach opartych na klasach 355
    • Praca z grupami i uprawnieniami 358
  • Zarządzanie modułami kursu i treścią 364
    • Użycie zbiorów formularzy dla modułów kursów 364
    • Dodanie treści do modułów kursów 368
    • Zarządzanie modułami i treścią 373
    • Zmiana kolejności modułów i treści 377
  • Podsumowanie 380

Rozdział 11. Renderowanie i buforowanie treści 381

  • Wyświetlanie kursów 382
  • Dodanie rejestracji uczestnika 386
    • Utworzenie widoku rejestracji uczestnika 386
    • Zapisanie się na kurs 389
  • Uzyskanie dostępu do treści kursu 392
    • Generowanie różnych rodzajów treści 395
  • Użycie frameworka buforowania 398
    • Dostępne mechanizmy buforowania 398
    • Instalacja Memcached 399
    • Ustawienia bufora 400
    • Dodanie Memcached do projektu 400
    • Poziomy buforowania 401
    • Użycie niskopoziomowego API buforowania 402
    • Buforowanie fragmentów szablonu 405
    • Buforowanie widoków 406
  • Podsumowanie 407

Rozdział 12. Utworzenie API 409

  • Utworzenie API typu RESTful 410
    • Instalacja Django Rest Framework 410
    • Definiowanie serializacji 411
    • Klasy parserów i renderowania formatów 412
    • Utworzenie widoków listy i szczegółowego 413
    • Serializacja zagnieżdżona 415
    • Utworzenie własnych widoków 417
    • Obsługa uwierzytelniania 418
    • Określenie uprawnień do widoków 419
    • Utworzenie kolekcji widoku i routerów 420
    • Dołączenie dodatkowych akcji do kolekcji widoku 422
    • Tworzenie własnych uprawnień 423
    • Serializacja treści kursu 423
    • Wykorzystanie API RESTful 425
  • Podsumowanie 428

Rozdział 13. Budowanie serwera czatu 429

  • Utworzenie aplikacji czatu 429
    • Implementacja widoku pokoju czatu 430
    • Dezaktywacja buforowania na poziomie witryny 432
  • Obsługa czasu rzeczywistego w Django za pomocą frameworka Channels 433
    • Aplikacje asynchroniczne z wykorzystaniem ASGI 433
    • Cykl żądanie-odpowiedź z wykorzystaniem frameworka Channels 434
  • Instalacja frameworka Channels 436
  • Pisanie konsumenta 438
  • Routing 439
  • Implementacja klienta WebSocket 440
  • Warstwa kanału komunikacyjnego 445
    • Kanały komunikacyjne i grupy 446
    • Konfiguracja warstwy kanału komunikacyjnego z wykorzystaniem Redis 446
    • Aktualizacja konsumenta w celu rozgłaszania wiadomości 447
    • Dodawanie kontekstu do wiadomości 451
  • Modyfikacja konsumenta w celu uzyskania pełnej asynchroniczności 454
  • Integracja aplikacji czatu z istniejącymi widokami 456
  • Podsumowanie 457

Rozdział 14. Wdrożenie 459

    • Zarządzanie ustawieniami dla wielu środowisk 460
    • Instalacja PostgreSQL 462
    • Sprawdzenie projektu 463
    • Udostępnianie Django za pomocą WSGI 463
    • Instalacja uWSGI 463
    • Konfiguracja uWSGI 464
    • Instalacja NGINX 467
    • Środowisko produkcyjne 468
    • Konfiguracja Nginx 468
    • Udostępnianie zasobów statycznych i multimedialnych 470
    • Zabezpieczanie połączeń za pomocą SSL/TLS 473
    • Wykorzystanie serwera Daphne z frameworkiem Django Channels 477
    • Wykorzystanie bezpiecznych połączeń dla gniazd WebSocket 478
    • Uwzględnienie Daphne w konfiguracji NGINX 478
    • Utworzenie własnego oprogramowania pośredniczącego 481
  • Implementacja własnych poleceń administracyjnych 484
    Podsumowanie 487
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-7251-1
Rozmiar pliku: 15 MB

BESTSELLERY

Kategorie: