Hệ thống Admin trong Python Django
Lập trình web với Python bằng Django

Danh sách bài học
Hệ thống Admin 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
Trong bài này Kteam sẽ nói cho các bạn về hệ thống Admin được hỗ trợ trong Framework Django.
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
Bài này sẽ giới thiệu những nội dung sau:
- Giới thiệu hệ thống Admin
- Tạo tài khoản admin để truy cập hệ thống Admin
- Cách đưa Model vào Admin quản lý
- Cách tuỳ biến Admin
Giới thiệu hệ thống Admin
Thường ở mỗi website, đặc biệt là web bán hàng, blog hay tin tức thì ta cần một hệ thống admin để quản lý những vấn đề như thêm sửa xoá dữ liệu. Công việc xây dựng admin khá là mất nhiều thời gian và gây ra sự nhàm chán. Ở trong Django đã cung cấp cho ta một hệ thống admin rất là tiện lợi mà ta không cần phải viết ra nó.
Tạo tài khoảm admin để truy cập hệ thống Admin
Bây giờ Kteam sẽ tạo một tài khoản admin để truy cập vào hệ thống, ta sẽ mở terminal vào gõ lệnh:
Sau khi nhập lệnh, hệ thống yêu cầu thông tin tài khoản admin, bạn hay nhập username, email và password để khởi tạo:
Bây giờ mình bật server lên và vào đường dẫn /admin và dùng tài khoản vừa tạo để đăng nhập:
Sau khi đăng nhập thành công, Admin mặc định sẽ quản lý 2 bảng là
User (bảng lưu các user trong hệ thống), và bảng Group
nhằm tạo các nhóm trong user với những quyền có thể thực thi trong hệ thống.
Cách đưa Model vào cho Admin quản lý
Bây giờ Kteam muốn hệ thống Admin có thể quản lý model Post từ bài trước. Đầu tiên là vào file admin.py trong app blog. Import model Post qua và register vào bằng dòng code dưới đây.
Bây giờ ta reload trang admin thì sẽ hiển thị ra:
Vào trong Post ta sẽ thấy 2 bài viết mà ta đã tạo trước đó:
Cách tuỳ biến Admin
Django có thể hỗ trợ cho ta tuỳ biến hệ thống Admin. Như ở phần quản lý Post hiện tại thì chỉ mới hiển thị tiêu đề của Post, giờ Kteam muốn bảng đó hiện thị tiêu đề và ngày viết bài thì làm như sau:
Đầu tiên là phải tạo 1 class PostAdmin kế thừa class admin.ModelAdmin, khởi tạo biến list_display kiểu list chứa 2 string title và date tương ứng 2 field của bảng Post. Sau đó đưa PostAdmin vào tham số register cùng với Post:
Giờ ta lại kết quả:
Tiếp theo, Kteam muốn tạo filter để lọc bài viết, Kteam sẽ lọc bài viết theo ngày viết bài thì tạo thêm một list là list_filter chứa giá trị date tương ứng field của bảng Post:
Ta sẽ thấy bên phải có thêm một bảng filter lọc theo ngày, tuần, tháng và năm
Cuối cùng, Kteam muốn tạo một thanh search để dễ dàng tìm kiếm bài viết, Kteam muốn tìm kiếm bài viết dựa vào tiêu đề của bài thì thêm một biến search_fields chứa giá trị title:
Bây giờ ta hãy thử nhập tiêu đề để thử tìm kiếm:
Kết
Như vậy Kteam đã hướng dẫn các bạn xong cách sử dụng hệ thống Admin trong Python Django.
Ở bài tiếp theo, Kteam sẽ giới thiệu cho các bạn LIỆT KÊ DANH SÁCH BÀI VIẾT 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 Hệ thống Admin 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
xin hỏi trong setting.py và urls.py có cần thay đổi gì không , mình không thể login theo đường dẫn 127.0.0.1:8000/admin vì nó báo đường dẫn không tồn tại :((
xin hỏi trong setting.py và urls.py có cần thay đổi gì không , mình không thể login theo đường dẫn 127.0.0.1:8000/admin vì nó báo đường dẫn không tồn tại :((