Loại bỏ Hardcoded URL trong Python Django
Lập trình web với Python bằng Django

Danh sách bài học
Loại bỏ Hardcoded URL trong Python Django
Nội dung bài viết Học nhanh
Ghi chú
Nội dung bài viết bạn đang xem được update từ tháng 06/2019. Vì vậy sẽ có đôi chút khác biệt giữ VIDEO và NỘI DUNG BÀI VIẾT.
Chúng ta sẽ có nhiều cập nhập hơn về cả bài viết lẫn video trong thời gian tới. Nhớ like/ share hoặc đánh giá 5 sao để Kteam có động lực nhé!
Cảm ơn các bạn!
Dẫn nhập
Ở bài trước chúng ta đã cùng nhau HIỂN THỊ THÔNG TIN BÀI VIẾT TRONG PYTHON DJANGO.
Trong bài này Kteam sẽ hướng dẫn cho các bạn loại bỏ những hardcoded url trong project.
Nội dung
Để theo dõi bài này tốt nhất, bạn nên xem qua bài:
- GIỚI THIỆU VỀ PYTHON DJANGO
- TẠO PROJECT VỚI PYTHON DJANGO
- TẠO WEB APP VÀ XỬ LÝ KHI NGƯỜI DÙNG YÊU CẦU TRUY CẬP TRONG PYTHON DJANGO
- SỬ DỤNG TEMPLATE VÀ JINJA TRONG PYTHON DJANGO
- FILE TĨNH VÀ THIẾT KẾ WEB BẰNG BOOTSTRAP TRONG PYTHON DJANGO
- THIẾT KẾ HOÀN CHỈNH BLOG TRONG PYTHON DJANGO
- DÙNG MODEL TẠO BẢNG DATABASE BẰNG NGÔN NGỮ PYTHON
- TƯƠNG TÁC DATABASE BẰNG NGÔN NGỮ PYTHON
- HỆ THỐNG ADMIN TRONG PYTHON DJANGO
- LIỆT KÊ DANH SÁCH BÀI VIẾT TRONG PYTHON DJANGO
- HIỂN THỊ THÔNG TIN BÀI VIẾT TRONG PYTHON DJANGO
Bài này sẽ giới thiệu những nội dung sau:
- Hardcoded URL là gì?
- Cách loại bỏ Hardcoded URL
Hardcoded URL là gì?
Hiện tại blog Kteam bây giờ thiết kế url thông tin bài viết là /blog/id, vậy giả sử sau này trang web phát triển lên thì Kteam muốn chia rõ các loại bài viết như chia ra bài viết của Python hay của Java như: /blog/java/id, /blog/python/django/id, ...
Như vậy, Kteam lúc đó phải chỉnh lại đường dẫn path để theo đúng ý tưởng. Tuy nhiên sẽ gặp vấn đề như sau:
Các đường dẫn ở đây sẽ báo lỗi, như vậy chúng ta cần phải sửa lại cho đúng. Tuy nhiên, khi làm website thì việc sử dụng tag <a> có đường dẫn này rất nhiều, và chúng ta không thể nào nhớ đã gán url này ở đâu.
Như vậy hardcoded là những code ta gán cứng cho những thứ dễ bị thay đổi trong quá trình phát triển phần mềm. Việc loại bỏ hardcoded là quan trọng trong lập trình viên. Kteam sẽ giúp các bạn cách loại bỏ hardcoded url.
Cách loại bỏ Hardcode URL
Ở urls.py, Kteam sẽ đặt name cho những path như sau:
Và dựa vào những name này ta sẽ đặt trong các template. Đầu tiên là ở base.html, ở phần sliderbar kteam sẽ đổi là:
Như vậy, Jinja lẽ dựa vào name url để lấy ra đường dẫn tương ứng.
Tiếp theo, với đường dẫn có key như thông tin bài viết thì làm sao. Ta sẽ để id phía sau url như thế này:
- blog.html
Bây giờ ta kiểm tra kết quả:
Jinja đã chuyển được từ name sang đúng url tương ứng.
Kết
Như vậy Kteam đã hướng dẫn các bạn xong cách loại bỏ Hardcoded URL trong Python Django.
Ở bài tiếp theo, Kteam sẽ giới thiệu cho các bạn XỬ LÝ LỖI 404 TRONG PYTHON DJANGO.
Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.
Tải xuống
Tài liệu
Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Loại bỏ Hardcoded URL trong Python Django dưới dạng file PDF trong link bên dưới.
Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com
Đừng quên like và share để ủng hộ Kteam và tác giả nhé!

Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.
Tác giả/Dịch giả
Khóa học
Lập trình web với Python bằng Django
Lập trình web với Python bằng Django
anh có thể giải thích tại sao đặt là post.id đc k ạ
Cho em hỏi là có cách nào có thể dẫn url độc lập (bỏ qua http://localhost) ở trong file .html được không ạ?