вы можете использовать из этого кода и изменять каждую нужную вам команду. Обратите внимание: если вы запускаете эту команду, ваша оболочка должна находиться в папке проекта django, если вы хотите, вы можете изменить направление с помощью команды "CD" перед командой запуска django
from subprocess import Popen
from sys import stdout, stdin, stderr
Popen('python manage.py runserver', shell=True, stdin=stdin, stdout=stdout ,stderr=stderr)
вы можете общаться с оболочкой по этому коду:
from subprocess import Popen, PIPE
from sys import stdout, stdin, stderr
process = Popen('python manage.py createsuperuser', shell=True, stdin=PIPE, stdout=PIPE ,stderr=stderr)
outs, errs = process.communicate(timeout=15)
print(outs)
username="username"
process.stdin.write(username.encode('ascii'))
process.stdin.close
К сожалению, для createuperuser вы получаете эту ошибку:
Создание суперпользователя пропущено из-за неработает в TTY.Вы можете запустить manage.py createsuperuser
в своем проекте, чтобы создать его вручную
Вы не можете создать суперпользователя с tty для проблем безопасности.
Я предпочитаю:
вы можете использовать этот код в своем проекте для создания суперпользователя
from django.contrib.auth.models import User;
User.objects.create_superuser('admin', 'admin@example.com', 'pass')
, если вы хотите создать суперпользователя с оболочкой, я бы предложил запустить Data Migration stackoverflow.com / a/ 53555252/9533909