Techniki Zaawansowane
3 godz. 43 min · Python · Full-stack i Programowanie
Grzegorz SzymborskiProgramistaJeżeli na samym początku nie przygotujemy dobrze projektu, to gdy wrócimy do niego po dłuższym czasie - czekają nas kłopoty. Jeżeli uda się nam go uruchomić, to rozeznanie się w nim będzie udręką. Prowadzący pokaże Ci jak wyglądają jego produkcyjne aplikacje, na co zwraca uwagę i co pomaga mu trzymać porządek.
Biblioteka pytest posiada wiele ciekawych funkcjonalności. Parametryzowanie testów, fixture i uproszczona składnia pozwalają nam skupić na testowaniu tego, co kluczowe, wydzielając mniej istotne fragmenty kodu. To wszystko sprawia, że w pewnym momencie łatwiej będzie Ci pisać testy, niż ręcznie sprawdzać poprawność działania apki.
Jeżeli aplikacja, którą stworzysz, osiągnie dużą popularność, może się okazać, że przytłoczona dużym ruchem zacznie spowalniać... lub całkowicie przestanie odpowiadać. Opiszemy różne techniki służące temu, by temu zaradzić - od metod select i prefetch related, aż po cache. Na deser przeprowadzimy na stronie test obciążeniowy za pomocą narzędzia locust.
Django i Postgres to świetne połączenie. Framework ten posiada wbudowaną obsługę wyszukiwania pełnotekstowego oferowanego przez tę bazę. Warto wiedzieć, kiedy jej użyć, a kiedy wystarczy zwykłe icontains.
ORM w Django ułatwia mnóstwo operacji. A czasem nie dość to, że ułatwia... to jeszcze przyspiesza! Chcemy zainspirować Cię czterema metodami: annotate, aggregate, bulkupdate i bulkcreate. Gdy pojawią się one w naszym kodzie, zaczniemy doceniać uroki frameworka Django.
Kurs jest stworzony dla osób, które znają już podstawy Django i wiedzą, jak pisać proste strony. Znają modele, widoki, oraz niestraszny im jest Python. Zalecana jest również podstawowa znajomość dowolnej relacyjnej bazy danych. W kursie przedstawiamy niekiedy narzędzia i praktyczne przykłady, jak można ich użyć, ale w celu zaimplementowania konkretnego rozwiązania w projekcie wymagana będzie umiejętność czytania dokumentacji.
W poprzedniej edycji zajmowaliśmy się kierowaniem fragmentów szablonu.
A co jeśli byśmy chcieli skasować widok.
Konkretnie wszystko to co on zwraca.
Weźmy za przykład ten sam widok
listy artykułów tylko zamiast kasować tego fragmentu skierujemy wszystko.
Robimy to dodając Dekoral tor do metody SPA
dodajemy go w ten sposób że za pomocą metody.
Metodę korektor.
Dodajemy Tor kaszb.
Page pochodzi z change of just the Korea to też też Page.
Natomiast dekoracja pochodzi z Szanghaju.
Z kolei Torres jako parametr Page podajemy
ile sekund ma być do Times of time czyli ile czasu ma być ważny.
Dodajmy tak jak poprzednio 60 sekund w tym momencie co 60 sekund będziemy serwować
świeży widok napiszemy i sprawdźmy pierwsze odświeżenie.
Wszystko jest po staremu.
Drugie odświeżenie widzimy jest nawet nieco szybciej niż
poprzednie 8 milisekund wtedy było ich kilkadziesiąt.
W tym przypadku strona działa błyskawicznie.
Nie ma żadnych zapytań do bazy danych nie ma nic co by obciążały widok.
Nie ma nic co by obciążał zapytanie
i wszystko jest rewelacyjnie jesteśmy gotowi żeby taka strona była serwowane dla
setek tysięcy może nawet użytkowników na minutę.
Jeżeli chcemy uzależnić rezultat naszego skierowanego widoku od nagłówków jaki
wysyła do nas przeglądarka użytkownika należy dodać kolejny radar.
Kurator nazywa awarią Hades
i podajemy TUTAJ które nagłówki nas interesują piszemy nagłówek Józef agent.
Sprawdzimy za pomocą mnie.
Co on zmienia.
Piszemy jakiś przykład.
Widzimy że strona jest odświeżona.
Zmienimy.
Widzimy że ponownie dostajemy świeżą wersję.
Wśród dostępnych metod jest również.
Wariant on Kuklis.
Dostępne również z dekodera torów to Django i ono w zależności od
Kuklis ów które są przesyłane przez użytkownika za serwuje nam różne wersje.
Jeszcze taka drobna ciekawostka metod Dekoral tor zamienia Dekoral tor funkcyjne
na Dekoral tor którym który może być użyty w metodzie czyli z parametrem.