Django Academy · Lekcja

MTV: modele, szablony i widoki

Zrozumieć podział odpowiedzialności w Django oraz mapowanie MTV na MVC

Lekcja 2 z 413 kroki

MTV: modele, szablony i widoki to bezpłatna lekcja Django Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Django Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Django Academy zawiera 4 lekcji w sumie.

Trzy jasne zadania

Django dzieli aplikację na trzy role, dzięki czemu kod pozostaje uporządkowany. Ten wzorzec nosi nazwę MTV: Models, Templates i Views, z których każdy ma jedno jasno określone zadanie.

Modele przechowują dane

Model opisuje dane, na przykład Post lub User. Django przekształca tę klasę Pythona w tabelę bazy danych, którą można odpytywać bez pisania SQL.

class Post(models.Model):
    title = models.CharField(max_length=120)
    body = models.TextField()

Szablony wyświetlają dane

Template to plik HTML z miejscami na dane. Określa, jak dane wyglądają na stronie, oddzielając projekt wizualny od logiki Pythona.

<h1>{{ post.title }}</h1>
<p>{{ post.body }}</p>

Widoki łączą oba elementy

View jest mózgiem: przyjmuje żądanie, pobiera dane z modeli i przekazuje je szablonowi do renderowania. Łączy wszystkie elementy.

def post_list(request):
    posts = Post.objects.all()
    return render(request, "list.html", {"posts": posts})

Przepływ w jednym zdaniu

Nadchodzi żądanie, widok pobiera dane modelu, a następnie szablon renderuje wynik. Ta podróż w obie strony jest sercem każdej strony Django.

MTV a MVC

Być może znają Państwo MVC z innych miejsc. MTV to ta sama idea pod innymi nazwami: Model pozostaje Modelem, Template jest Widokiem, a View Django pełni rolę Kontrolera.

Skąd różnice w nazwach

Django nazywa warstwę strony Template, ponieważ samo zajmuje się sterowaniem. Framework jest kontrolerem, więc użycie tego słowa mogłoby tylko wprowadzać zamieszanie.

Rozdzielenie odpowiedzialności

Oddzielenie danych, logiki i projektu wizualnego nazywa się separation of concerns. Można zmienić wygląd szablonu bez modyfikowania modeli, a kod pozostanie uporządkowany. 🧩

Gdzie znajduje się każdy element

Modele znajdują się w models.py, widoki w views.py, a szablony w folderze templates. Wiedza o tym, gdzie umieszczać poszczególne elementy, to połowa swobodnej pracy w Django.

Adresy URL wskazują widoki

Jeden brakujący element łączy wszystko: wzorzec URL przypisuje adres internetowy do właściwego widoku, dzięki czemu Django wie, który kod uruchomić dla każdej strony.

urlpatterns = [
    path("posts/", post_list),
]

Jak MTV pomaga

Dzięki jasno określonym rolom zespoły mogą pracować równolegle, a błędy łatwiej znaleźć. Zawsze wiadomo, gdzie należy wprowadzić daną zmianę, nawet po kilku miesiącach. 🙌

Szybki test

Która warstwa wykonuje najcięższą pracę?

Podsumowanie

Znają już Państwo MTV w Django: modele przechowują dane, szablony je wyświetlają, a widoki łączą oba elementy. To po prostu MVC pod inną nazwą, z przejrzystym rozdzieleniem odpowiedzialności. ✨

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „MTV: modele, szablony i widoki” jest bezpłatna?

Tak — pełny tekst „MTV: modele, szablony i widoki” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Django Academy, przejdź na CoddyKit PRO. Kurs Django Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „MTV: modele, szablony i widoki”?

Zrozumieć podział odpowiedzialności w Django oraz mapowanie MTV na MVC Ćwiczysz Django Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Django Academy?

Nie wymagamy żadnego doświadczenia. Django Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „MTV: modele, szablony i widoki”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Django Academy?

Tak. Każda lekcja Django Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Czym jest Django i jakie problemy rozwiązuje
  2. MTV: modele, szablony i widoki
  3. Batteries included: ORM, panel administracyjny i uwierzytelnianie
  4. Czy Django pasuje do Państwa projektu
← Powrót do Django Academy