Hướng Dẫn Cài Đặt Django Unfold Và Collect Static File Trong Django

Views: 9 29/05/2026 16:35
Hướng Dẫn Cài Đặt Django Unfold Và Collect Static File Trong Django

1. Django Unfold Là Gì?

Django Unfold là một package giúp nâng cấp giao diện Django Admin hiện đại hơn, đẹp hơn và responsive tốt hơn so với giao diện mặc định của Django.

Một số ưu điểm:

  • Giao diện hiện đại

  • Hỗ trợ dark mode

  • Responsive mobile

  • Sidebar đẹp

  • Dashboard dễ tùy biến

  • Tích hợp Tailwind UI

2. Cài Đặt Django Unfold

Mở terminal:

pip install django-unfold

3. Thêm Unfold Vào INSTALLED_APPS

Mở file:

settings.py

Thêm vào đầu INSTALLED_APPS:

INSTALLED_APPS = [
    "unfold",
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
]

Lưu ý:

  • unfold phải nằm trước django.contrib.admin

  • Nếu đặt sai thứ tự CSS sẽ không hoạt động

4. Cấu Hình Static File

Trong settings.py thêm:

 

STATIC_URL = "static/"

STATICFILES_DIRS = [
    BASE_DIR / "static",
]

STATIC_ROOT = BASE_DIR / "staticfiles"

Ý nghĩa:

Biến

Chức năng

STATIC_URL

URL truy cập static

STATICFILES_DIRS

Thư mục static khi dev

STATIC_ROOT

Thư mục collect static khi deploy

5. Chạy Collect Static

Sau khi cấu hình xong chạy:

python manage.py collectstatic

Khi hỏi:

Type 'yes' to continue

Nhập:

yes

Django sẽ copy toàn bộ CSS, JS, Font vào thư mục:

staticfiles/

6. Chạy Server

python manage.py runserver

Truy cập:

http://127.0.0.1:8000/admin/

Bạn sẽ thấy giao diện admin mới của Django Unfold.

7. Nếu CSS Không Hiển Thị

Kiểm tra các lỗi phổ biến:

Sai thứ tự INSTALLED_APPS

Sai:

"django.contrib.admin",
"unfold",

Đúng:

"unfold",
"django.contrib.admin",

Chưa collect static

Chạy lại:

python manage.py collectstatic --clear

DEBUG=False nhưng chưa cấu hình static

Nếu deploy production:

DEBUG = False

Cần cấu hình nginx/apache hoặc dùng whitenoise.

8. Cài WhiteNoise Để Serve Static

Cài package

pip install whitenoise

Thêm middleware

MIDDLEWARE = [
    "django.middleware.security.SecurityMiddleware",
    "whitenoise.middleware.WhiteNoiseMiddleware",
]

9. Ví Dụ Full Settings Static

STATIC_URL = "static/"

STATICFILES_DIRS = [
    BASE_DIR / "static",
]

STATIC_ROOT = BASE_DIR / "staticfiles"

STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage"

 

Chúc các bạn thành công

django unfold cài django unfold django admin đẹp django admin ui collectstatic django static file django django unfold tutorial django admin theme setup django unfold django collect static