manage.py là CLI wrapper quanh django-admin, set sẵn DJANGO_SETTINGS_MODULE cho project hiện tại. Nhờ đó python manage.py <cmd> luôn chạy đúng config dev/test/prod đang chọn, không cần khai báo lại.
Mấy lệnh dùng nhiều:
bash
python manage.py runserver # dev server :8000
python manage.py makemigrations # sinh file migration từ thay đổi models
python manage.py migrate # apply migration vào DB
python manage.py createsuperuser # tạo admin account
python manage.py shell # REPL có Django context
python manage.py test # chạy test suite
python manage.py collectstatic # gom static cho production
python manage.py startapp <name> # scaffold app mớiHai thứ hay quên: runserver chỉ dành cho dev (production phải dùng Gunicorn/Uvicorn), và file migration sinh ra bắt buộc commit cùng PR — bỏ sót là vỡ deploy ở môi trường khác.