Django jest idealny do dużych aplikacji, systemów firmowych, CMS-ów i platform SaaS, ponieważ zapewnia spójną architekturę, łatwe skalowanie i bogaty ekosystem rozszerzeń. Jeśli zaczynasz przygodę z Django, poniżej znajdziesz kompleksowy przewodnik po instalacji, strukturze projektu i podstawowych koncepcjach, które pozwolą Ci szybko rozpocząć budowanie aplikacji.
Instalacja Django
Instalacja Django jest bardzo prosta dzięki pip:
Bash1 2 3pip install django # Lub dla konkretnej wersji pip install django==4.2.7
Weryfikacja instalacji:
Bash1python -m django --version
Tworzenie projektu Django
Nowy projekt Django tworzy się za pomocą narzędzia django-admin:
Bash1 2django-admin startproject myproject cd myproject
Struktura projektu:
Bash1 2 3 4 5 6 7 8myproject/ manage.py myproject/ __init__.py settings.py urls.py wsgi.py asgi.py
Tworzenie aplikacji
W Django aplikacja to modułowy komponent projektu. Aplikacje można wielokrotnie wykorzystywać w różnych projektach:
Bash1python manage.py startapp myapp
Pierwsza aplikacja – modele, widoki, szablony
Modele
Modele Django to klasy Python, które reprezentują strukturę danych w bazie. Jeśli nie znasz jeszcze podstaw programowania obiektowego w Pythonie, warto to opanować przed dalszą pracą z Django.
Python1 2 3 4 5 6 7 8 9 10# myapp/models.py from django.db import models class Post(models.Model): title = models.CharField(max_length=200) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) def __str__(self): return self.title
Migracje
Migracje tworzą strukturę bazy danych na podstawie modeli:
Bash1 2python manage.py makemigrations python manage.py migrate
Widoki
Widoki obsługują logikę biznesową i zwracają odpowiedzi:
Python1 2 3 4 5 6 7# myapp/views.py from django.shortcuts import render from .models import Post def post_list(request): posts = Post.objects.all() return render(request, 'myapp/post_list.html', {'posts': posts})
Szablony
Szablony definiują wygląd aplikacji:
HTML1 2 3 4 5 6 7 8 9 10 11 12 13 14<!-- myapp/templates/myapp/post_list.html --> <!DOCTYPE html> <html> <head> <title>Lista postów</title> </head> <body> <h1>Lista postów</h1> {% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.content }}</p> {% endfor %} </body> </html>
URL routing
URL routing mapuje ścieżki na widoki:
Python1 2 3 4 5 6 7# myapp/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.post_list, name='post_list'), ]
Python1 2 3 4 5 6 7 8# myproject/urls.py from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('myapp.urls')), ]
Panel administracyjny
Django automatycznie tworzy panel administracyjny. Wystarczy zarejestrować modele:
Python1 2 3 4 5# myapp/admin.py from django.contrib import admin from .models import Post admin.site.register(Post)
Utworzenie superużytkownika:
Bash1python manage.py createsuperuser
Uruchomienie serwera deweloperskiego
Bash1python manage.py runserver
Aplikacja będzie dostępna pod adresem http://127.0.0.1:8000/.
Podsumowanie
Django dostarcza kompletne narzędzia do budowania aplikacji webowych:
- Modele definiują strukturę danych
- Widoki obsługują logikę biznesową
- Szablony określają wygląd aplikacji
- Panel administracyjny ułatwia zarządzanie danymi
- Migracje synchronizują bazę danych z modelem
Te podstawowe komponenty są fundamentem każdej aplikacji Django.



