我正在通过民意调查教程,一切都很好,直到我尝试登录管理站点;它只是说
“请为员工帐户输入正确的用户名和密码。请注意,这两个字段可能区分大小写。”
所以我用Google搜索了问题并尽我所能。以下是我调查过的所有问题:
django_session
表格:我查了一下;它在那里。'polls.apps.PollsConfig',
添加到INSTALLED_APPS
。is_staff
,is_superuser
和is_active
均为True
。django_session
表,它是空的。url(r"^admin/", admin.site.urls)
。python manage.py runserver
。还有什么我还没试过,或者我错过了什么?
答案 0 :(得分:2)
我猜您会通过其他方式创建此用户,而不是python manage.py createsuperuser
当您有两个身份验证系统时会发生这种情况。即,。您可能拥有django内置身份验证和(例如)基于DRF令牌的身份验证。
要登录后端(django admin),您必须使用python manage.py createsuperuser
要更改密码,请使用以下
python manage.py changepassword
答案 1 :(得分:1)
检查您的 is_active 模型字段。您可能已将其默认值设置为 False,因此它可能不允许您登录。</p>
如果是这样 -- is_active = models.BooleanField(default=False)
-- 把它改成 True,或者检查数据库,把创建的超级用户的 is_active 中的值改成 1。
答案 2 :(得分:0)
有时候,最简单的解决方案可以解决巨大的问题。 对我来说,注释掉或删除就足够了:
SESSION_COOKIE_SECURE = True
仅此而已。
答案 3 :(得分:0)
我认为您应该尝试以下步骤:
创建新的管理员用户
python manage.py createsuperuser
使用新帐户登录管理站点
重置您的帐户密码并对其进行修改
使用您的原始帐户登录管理站点
答案 4 :(得分:0)
我的问题是使用了正确的设置模块,因为我对 local/local_proxy 和生产使用了不同的数据库 DJANGO_SETTINGS_MODULE=serverless_django.settings.local_proxy python manage.py createsuperuser 为我工作
答案 5 :(得分:0)
如果使用的数据库是默认的 sqlite3 数据库,并且 settings.py 的 DATABASES 属性引用了与 manage.py 不在同一目录中的 db.sqlite3 文件,则也可能发生这种情况。