Vì vậy, bây giờ chúng ta sẽ có một cái nhìn vào mã mà thực sự viết các quan điểm,
mã hiệu quả trong views.py.
Bây giờ quan điểm đầu tiên mà chúng ta sẽ có một cái nhìn vào là một nơi mà chúng ta thậm chí không
viết bất kỳ mã nào cả.
Và đây là cái nhìn được xác định trước đó, TemplateView đó.
Và một lần nữa, TemplateView là mã mà một lớp được cung cấp
cho chúng tôi từ Django, TemplateView, và bạn vượt qua nó một tham số.
Vì vậy, chúng tôi đang thực sự loại gọi một chức năng ở đây
và đi qua một tên mẫu cho nó, và đó là một tập tin, views/main.html.
Đây là chế độ xem ứng dụng,
có một thư mục con được gọi là mẫu và sau đó tôi sẽ nói về điều này trong một chút.
Chúng tôi lặp lại tên ứng dụng hai lần.
Điều đó hơi kỳ lạ.
Nhưng nó phải thực hiện một thực tế là những tên gọi này là toàn cầu trên tất cả các ứng dụng.
Và vì vậy bạn muốn có nhiều hơn một main.html.
Và đó là lý do tại sao bạn có tên thư mục bổ sung
này và bạn đặt nó ở đó mặc dù điều đó cảm thấy một chút dư thừa nhưng nó không sao.
Và vì vậy đây chỉ là một tập tin HTML tĩnh.
Tôi sẽ không đọc bất kỳ dữ liệu nào từ một cơ sở dữ liệu.
Tôi sẽ không viết bất kỳ dữ liệu nào vào cơ sở dữ liệu.
Tôi sẽ chỉ đọc tập tin này và gửi nó trở lại trình duyệt.
Và đó là một điều phổ biến,
nơi chúng tôi chỉ có một tập tin mà chúng tôi muốn gửi lại trình duyệt.
Và vì vậy chúng tôi thậm chí không cần phải viết bất kỳ mã Python khác hơn là
thêm mục nhập này vào các mẫu URL trong urls.py.
Vì vậy, đó là một cái nhìn mà bạn đã viết không có mã Python.
Bây giờ, đối với các phần mà bạn sẽ viết mã Python cho một cái nhìn,
bạn sẽ vượt qua trong các biến.
Các biến là tất cả về đối tượng yêu cầu.
Đối tượng request là tất cả các dữ liệu đến và đối tượng response
là một cái gì đó bạn sản xuất trong chế độ xem và bạn gửi tất cả trở lại.
Vì vậy, đối tượng request là một đối tượng của class HttpRequest.
Đây là một Django được xác định trước,
và chỉ có một loạt các thứ.
Đề án, bây giờ chương trình là gì?
Cho dù đó là https an toàn hay không an toàn. Cái xác? Đó là một sợi dây.
Vì vậy, có khoảng 20 hoặc 30 thuộc tính.
Chúng tôi sẽ sử dụng một số trong số chúng, nhưng bạn không phải sử dụng tất cả chúng, nhưng
bạn có thể đi tìm tài liệu.
Và ứng dụng của bạn càng phức tạp, càng có nhiều khả năng bạn
sẽ phải đi đào sâu để tìm một số ít yêu cầu đến.
Bạn có thể nghĩ rằng dữ liệu yêu cầu này là tất cả những dữ liệu mà bạn nhìn thấy trong
trình gỡ lỗi trình duyệt của bạn về những gì dữ liệu đã được gửi đến máy chủ,
rằng tất cả kết thúc ở đâu đó trong đối tượng này.
Bây giờ, khi chúng ta trở về từ một quan điểm, chúng ta phải gửi một phản hồi trở lại.
Và vì vậy phản ứng là thứ mà chúng ta tạo ra bên trong quan điểm của chúng ta.
Nó có thể chỉ đơn giản là văn bản đó là HTML, hoặc nó có thể là một đối tượng chuyển
hướng, một phản ứng chuyển hướng cho biết, hey, đi đến một trang khác.
Và như vậy, chúng tôi làm điều đó. Công việc chính ở cuối chế độ xem là tạo ra
một phản hồi và sau đó trả lại cho Django.
Và như vậy, đây là một cái nhìn rất đơn giản.
Vì vậy, ở đây chúng tôi đang nói, chúng tôi đang ở trong ứng dụng quan điểm.
Chúng ta sẽ đi đến quan điểm sôi nổi, phải không?
Và như vậy trong urls.py, chúng ta nói bản đồ /funky để
chức năng này có tên funky, đó là một chức năng funky.
Đó là lý do tại sao tôi gọi nó là funky.
Và vì vậy khi nó nhìn thấy điều này, tất cả các dữ liệu đi vào yêu cầu
xuất hiện trong biến này là tham số đầu tiên được gửi đến hàm đó.
Vì vậy, đó là những gì điều này đang nói trong urls.py.
Lấy tất cả mọi thứ mà đi đến lượt xem/funky, thu thập tất cả các dữ liệu yêu cầu
từ trình duyệt, đặt nó trong một đối tượng, và sau đó vượt qua đối tượng yêu cầu đó trong.
Bây giờ trong này, tôi không thực sự sẽ làm bất cứ điều gì với
đối tượng yêu cầu đó bởi vì tôi luôn luôn trả về cùng một điều chính xác.
Và vì vậy tôi chỉ có một chuỗi ba trích dẫn tốt đẹp của một số HTML với ít thans và
thans lớn hơn và tôi sẽ về cơ bản trở lại,
đó là công việc của tôi trong quan điểm để trả lại một phản ứng.
Có một vài, hai loại chính của chúng. Một là một HttpResponse
, giống như một cơ thể của văn bản, và đó là những gì tôi đang gửi ở đây.
Tôi đang gửi một HttpResponse, đó là một nhà xây dựng.
Chúng tôi đang xây dựng một đối tượng HttpResponse và
lấy chuỗi mà tôi đặt trong đó và đi chúng tôi đi.
Được chứ? Và cơ bản là nếu bạn đi vào con đường này, bạn sẽ lấy
lại trang này và nó trông giống như thế khi tất cả được nói và hoàn thành.
Được rồi, bây giờ chúng ta muốn nói về cách chúng ta có thể nhận được các thông số.
Vì vậy, tôi đã đề cập rằng đối tượng yêu cầu này đi vào chức năng xem của bạn
có tất cả các dữ liệu từ yêu cầu.
Vâng, nếu chúng ta gửi đến một cái nhìn với câu hỏi đánh dấu
khóa giá trị cặp, đó là một đoán bằng 42 trên đó.
Và chúng tôi sẽ định tuyến nguy hiểm để views.danger trong urls.py.
Và, vì vậy tất cả dữ liệu này được gói trong biến này gọi là request, được
chuyển vào hàm có tên là danger.
Và như vậy, bên trong yêu cầu là một số dữ liệu. request.get là một từ điển
của các cặp khóa giá trị nằm trên URL đó.
Vì vậy, để kéo 42 ra, chúng ta có thể nói,
request.get khung 'đoán' và kéo đó ra.
Và vì vậy đó là tất cả chúng tôi đã có ở đây là một trang HTML thực sự đơn giản và
chúng tôi đang thay thế mà chunk nhỏ với 42.
Và vì vậy, bất kể con số này là trở lại trong đầu ra.
Vì vậy, đó là dự đoán của bạn là 42.
Vì vậy, đó là cách chúng tôi vượt qua dữ liệu GET vào một cái nhìn.
Bây giờ, tiếp theo,
tôi sẽ giải thích cho các bạn chính xác tại sao tôi gọi chức năng đó là “nguy hiểm”.
[ NHẠC]