🎸 Django Beginner

What is Django's manage.py and useful commands?

Answer

Django's manage.py is the command-line utility for administrative tasks. Run: python manage.py command. Essential commands: python manage.py runserver [port] — start development server (default 127.0.0.1:8000); python manage.py runserver 0.0.0.0:8080 — accessible on network; python manage.py makemigrations [appname] — create migration files; python manage.py migrate [appname] [migration] — apply migrations; python manage.py createsuperuser — create admin user; python manage.py shell — interactive Python shell with Django context; python manage.py shell_plus (django-extensions) — auto-imports all models; python manage.py dbshell — database shell (psql, mysql); python manage.py collectstatic — collect static files; python manage.py test [appname] — run tests; python manage.py test myapp.tests.TestCase.test_method — specific test; python manage.py loaddata fixture.json — load fixture data; python manage.py dumpdata myapp.Article --indent=2 > articles.json — export data; python manage.py check — system checks (missing fields, deprecated settings); python manage.py showmigrations; python manage.py sqlmigrate myapp 0001 — show SQL; python manage.py startapp appname — create new app. Custom management commands: create myapp/management/commands/my_command.py with a Command class extending BaseCommand. Run: python manage.py my_command --option value.