Django – #19 – CRUD cz. 1
Wprowadzenie.
W kolejnym cyklu wpisów poświęconym Django postaram się w prosty sposób przedstawić operacje CRUD, czyli rozwijając skrót Create, Read, Update, Delete. Django posiada mechanizmy wspierające te operacje, dzięki czemu jesteśmy w stanie bardzo szybko zaimplementować wspominane wyżej operacje. W cyklu tym, stworzymy prosty projekt aplikacji typu blog, w którym będziemy mogli dodawać (tworzyć) nowe wpisy, podglądać je, edytować oraz usuwać.
Zakres artykułu.
- Tworzenie bazowego projektu i aplikacji
- Testy
Tworzenie bazowego projektu i aplikacji
W celu stworzenia projektu w konsoli wpisujemy polecenie django-admin startproject django_crud. Jak widzimy nasz projekt będzie nosił nazwę django_crud. W następnym kroku stwórzmy aplikację o nazwie crud przy pomocy polecenia python3 manage.py startapp crud. Należy pamiętać, o przejściu do katalogu naszego projektu w którym znajduje się plik manage.py.
Gdy już mamy stworzony projekt i aplikację dokonujemy rejestracji aplikacji w pliku settings.py w sekcji INSTALLED_APPS.
W następnym kroku przeprowadźmy migrację bazy danych za pomocą polecenia python3 manage.py migrate, aby nie pojawiały nam się ostrzeżenia podczas uruchamiania serwera. Następnie uruchommy serwer przy pomocy polecenia python3 manage.py runserver i sprawdźmy, czy działa standardowa strona projektu Django (127.0.0.1:8000).
Kolejno stwórzmy naszą stronę domową. W tym celu w pliku urls.py dodajmy ścieżkę do widoku path(”, views.home, name=’home’), (widok dodamy w następnym kroku) od naszej strony domowej oraz zaimportujmy widoki z naszej aplikacji from auth_system import views.
Następnie w pliku views.py stwórzmy funkcję dla widoku home. Widok ten będzie zwracać wyrenderowany szablon home.html, który stworzymy w następnym kroku.
W katalogu naszej aplikacji utwórzmy następującą strukturę katalogów templates/crud, a następnie stwórzmy tam nasz szablon home.html.
Dla testów w szablonie home.html napiszmy tylko jedną prostą linijkę.
Następnie możemy sprawdzić, czy pojawia nam się napis HOME po wywołaniu strony domowej 127.0.0.1:8000.
W celu łatwiejszej nawigacji po naszych kolejnych stronach stwórzmy szablon bazowy base.html, który będzie rozszerzał nasze kolejne szablony. W szablonie bazowym stwórzmy prosty panel nawigacyjny. Kod całego pliku wygląda następująco.
Aby przyjemniej nam się korzystało z naszej strony, w szablonie bazowym dodałem trochę styli z bootstrapa.
W kolejnym kroku zmodyfikujmy szablon home.html, tak aby podczas renderowania został załączany szablon bazowy {% extends ‚crud/base.html’ %} oraz żeby został załączany nasz kod html. {% block content %} {% endblock %}.
W tym oto momencie możemy sprawdzić, czy baza dla naszego projektu działa poprawnie.
Testy
Testowanie na tym etapie jest bardzo szybkie i proste, ponieważ jedynie musimy sprawdzić, czy nasza strona domowa poprawnie się ładuje i wyświetla nasz napis HOME. W tym celu w przeglądarce należy wpisać adres 127.0.0.1:8000. Poniżej przedstawiam jak powinien wyglądać na tym etapie efekt końcowy.