Wprowadzenie do Django

1. Czym jest Django i gdzie się go używa?

Django to wysokopoziomowy framework webowy napisany w Pythonie, oparty na architekturze MTV (Model – Template – View), zbliżonej do znanego wzorca MVC. Jego główne zalety to:

  • Szybkość tworzenia aplikacji – dzięki wbudowanym narzędziom (np. system uwierzytelniania, panel administracyjny, ORM).
  • Bezpieczeństwo – domyślnie chroni przed atakami takimi jak SQL Injection, XSS czy CSRF.
  • Skalowalność – wykorzystywany w małych i dużych projektach (od blogów po serwisy obsługujące miliony użytkowników).
  • Społeczność i dokumentacja – Django ma rozbudowaną społeczność i świetną dokumentację, co ułatwia naukę i rozwiązywanie problemów.

Zastosowania Django:

  • Serwisy informacyjne i blogi.
  • Sklepy internetowe i systemy e-commerce.
  • Portale społecznościowe.
  • Aplikacje korporacyjne (CRM, ERP, systemy rezerwacji).
  • API i backendy dla aplikacji mobilnych.

2. Instalacja Pythona, wirtualnych środowisk i Django

Aby rozpocząć pracę z Django, trzeba przygotować środowisko programistyczne:

Instalacja Pythona

lub (w zależności od systemu)

Tworzenie wirtualnych środowisk

Wirtualne środowisko pozwala izolować projekty od siebie (każdy może mieć własne biblioteki i wersje Pythona).

  • Utwórz środowisko:
  • Aktywuj środowisko:

  • Windows (cmd):

  • Linux/Mac:

Instalacja Django

Po aktywacji środowiska instalujemy Django:

Sprawdzenie poprawności instalacji:


3. Tworzenie pierwszego projektu (django-admin startproject)

Po zainstalowaniu Django możemy utworzyć pierwszy projekt:

  • Wybierz folder, w którym chcesz pracować.

  • Uruchom komendę:

(gdzie myproject to nazwa projektu).

  • Przejdź do folderu projektu:
  • Uruchom serwer developerski:
  • W przeglądarce otwórz adres:
   http://127.0.0.1:8000/

Jeśli wszystko działa poprawnie, zobaczysz stronę powitalną Django.


4. Struktura projektu i rola poszczególnych plików

Po utworzeniu projektu struktura katalogów wygląda następująco:

myproject/
│
├── manage.py
│
├── myproject/
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py

Opis plików i folderów:

  • manage.py – główny plik zarządzania projektem. Używany do uruchamiania serwera, migracji, tworzenia aplikacji itd. (np. python manage.py runserver).
  • myproject/ – folder wewnętrzny z konfiguracją projektu.
  • __init__.py – plik inicjalizacyjny, oznacza folder jako moduł Pythona.
  • settings.py – najważniejszy plik konfiguracyjny (ustawienia bazy danych, aplikacji, ścieżek statycznych, języka, strefy czasowej).
  • urls.py – centralny plik routingu (mapuje adresy URL do widoków).
  • wsgi.py – konfiguracja serwera WSGI (wykorzystywana przy wdrożeniu na produkcji).
  • asgi.py – konfiguracja serwera ASGI (obsługuje asynchroniczne połączenia, np. WebSockety).

W miarę rozwoju projektu dodaje się kolejne aplikacje Django (np. blog, shop, users). Każda aplikacja ma swoją strukturę (models.py, views.py, urls.py, templates/, migrations/) i jest niezależnym modułem, który można łatwo przenosić między projektami.