ger*_*esc 33 python django django-admin python-3.x django-1.8
尝试为我的数据库创建超级用户:
manage.py createsuperuser
Run Code Online (Sandbox Code Playgroud)
得到一个悲伤的递归消息:
由于未在TTY中运行,因此跳过了超级用户.您可以manage.py createsuperuser在项目中运行以手动创建一个.
严重Django?真的吗?
我找到的唯一信息是上面列出的但是没有用: 由于在TTY中不工作,无法在django中创建超级用户
而这里的另一个,基本相同: 无法创建超级用户Django
Evg*_*kin 71
如果你跑
$ python manage.py createsuperuser
Superuser creation skipped due to not running in a TTY. You can run manage.py createsuperuser in your project to create one manually.从Git Bash并面对上面的错误消息尝试追加winptyie例如:
$ winpty python manage.py createsuperuser Username (leave blank to use '...'):
为了能够python像往常一样在Windows上运行命令以及我通常做的是在~/.profile文件中附加别名行,即
MINGW64 ~$ cat ~/.profile
alias python='winpty python'
Run Code Online (Sandbox Code Playgroud)
执行此操作后,要么源~/.profile文件,要么只是重新启动终端,初始命令python manage.py createsuperuser应该按预期工作!
小智 9
试图用命令泊坞窗容器中创建超级用户,当我有同样的问题:
sudo docker exec -i <container_name> sh。添加选项 -t 解决了问题:
sudo docker exec -it <container_name> sh
小智 9
在 virtualenv 中,为与 git-bash 相关的 Django 项目创建超级用户,请使用以下命令:
winpty python manage.py createsuperuser.
Run Code Online (Sandbox Code Playgroud)
从Django 3.0开始,您可以通过两种方式创建没有 TTY 的超级用户
方式 1:在命令行中将值和秘密作为 ENV 传递
DJANGO_SUPERUSER_USERNAME=admin2 DJANGO_SUPERUSER_PASSWORD=psw \
python manage.py createsuperuser --email=admin@admin.com --noinput
Run Code Online (Sandbox Code Playgroud)
方式2:设置DJANGO_SUPERUSER_PASSWORD为环境变量
# .admin.env
DJANGO_SUPERUSER_PASSWORD=psw
# bash
source '.admin.env' && python manage.py createsuperuser --username=admin --email=admin@admin.com --noinput
Run Code Online (Sandbox Code Playgroud)
输出应该是:Superuser created successfully.
| 归档时间: |
|
| 查看次数: |
24866 次 |
| 最近记录: |