Django dùng MVT (Model–View–Template) — bản chất giống MVC nhưng đổi tên cho khớp vai trò thực tế. Model = bảng + business logic, View = function/class nhận request trả response (đóng vai Controller trong MVC), Template = file HTML render dữ liệu (đóng vai View trong MVC).
Điểm hay làm người mới lạc: "View" của Django không phải lớp hiển thị — nó là nơi quyết định request đi đâu, gọi gì, trả gì. Việc render HTML là của Template.
request → URLconf → View (gọi Model, chọn Template) → Response