我是 Wagtail 和 django 的新手。我已经完成了 https://learnwagtail.com/wagtail-for-beginners/ 课程并设法在 Digital ocean 上启动并运行我的网站,但是我无法登录管理区域。我尝试过使用本地使用的超级用户凭据。我还多次尝试创建一个新的超级用户:
python manage.py createsuperuser
虽然该过程似乎在终端中成功运行(我通过 SSH 登录到我的 DO Droplet),但我不断收到“您的用户名和密码不匹配”。请再试一次。'尝试使用新创建的用户名和密码登录时出现消息。如果我使用 shell 检查用户,我可以看到新创建的用户存在。我也尝试过使用
python manage.py changepassword myusername
更改之前创建的超级用户的密码,但同样,虽然该过程在终端中似乎成功运行,但我在尝试登录时继续收到错误消息。任何人都可以为我指出正确的方向,我可以做什么在这里失踪或做错了吗?和/或我如何最好地调试这个问题?预先感谢!
您可能需要设置一个与您访问网站的域相匹配的
Site
。在命令行中,尝试以下操作:
from wagtail.models import Site
s=Site.objects.last()
s.hostname='yourdomain'
s.site_name='verbose site name'
s.is_default_site=True
s.save()
如果数据库中还没有站点(或者只是想添加另一个站点),请执行
s=Site.objects.create()
而不是 Site.objects.last()place the three properties into the
create` 语句作为关键字。
我需要确保我的manage.py 命令能够获取我的生产设置。所以运行:
DJANGO_SETTINGS_MODULE=mysite.settings.production ./manage.py createsuperuser
而不是:
python manage.py createsuperuser
就是解决方案。