无法使用Django manage.py创建超级用户

2024-05-19 00:03:39 发布

您现在位置:Python中文网/ 问答频道 /正文

正在尝试为我的数据库创建超级用户:

manage.py createsuperuser

收到悲伤的递归消息:

由于未在TTY中运行,已跳过超级用户创建。您可以在项目中运行manage.py createsuperuser来手动创建一个。

当真的Django?真的吗?

我找到的唯一信息是上面列出的,但它不起作用: Unable to create superuser in django due to not working in TTY

这里的另一个,基本上是一样的: Can't Create Super User Django


Tags: to项目django用户inpy信息数据库
3条回答

如果从Git Bash运行

$ 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.
,并遇到上述错误消息,请尝试附加winpty,例如:
$ winpty python manage.py createsuperuser
Username (leave blank to use '...'):

为了能够像往常一样在windows上运行python命令,我通常做的是在~/.profile文件中附加一个别名行,即

 MINGW64 ~$ cat ~/.profile
 alias python='winpty python'

执行此操作后,要么源文件~/.profile,要么重新启动终端,初始命令python manage.py createsuperuser应按预期工作!

在docker容器中使用命令创建超级用户时,我遇到了同样的问题: sudo docker exec -i <container_name> sh。添加选项-t解决了问题:

sudo docker exec -it <container_name> sh

要创建管理员用户名和密码,必须首先使用以下命令:

python manage.py迁移

然后在使用命令之后:

python manage.py createsuperuser

完成这些步骤后,程序将要求您输入:

  • 用户名
  • 电子邮件
  • 密码

使用密码时,它不会显示为您正在键入,因此它会显示为您没有键入,但忽略它,因为它会要求您租用密码。 完成这些步骤后,请使用以下命令:

python manage.py运行服务器

在浏览器中添加“/admin”,将带您进入管理站点,然后键入新的用户名和密码。

相关问题 更多 >

    热门问题