首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >来自django.contrib.auth.models导入用户

来自django.contrib.auth.models导入用户
EN

Stack Overflow用户
提问于 2018-02-13 05:57:23
回答 1查看 4.3K关注 0票数 1

我知道这个问题已经被提出和回答了,但是到目前为止我看到的解决方案并没有解决这个问题。我尝试在python中运行以下命令来验证登录到我当前正在构建的网站的用户。

代码语言:javascript
复制
from django.contrib.auth.models import User

但是,我得到了以下错误:

代码语言:javascript
复制
Traceback (most recent call last):
"C:\Users\<user>\Documents\GitHub\MegaPortal\BackEnd\BackEnd\test.py", line 4, in <module>
    from django.contrib.auth.models import User
  File "C:\Users\<user>\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\contrib\auth\models.py", line 2, in <module>
    from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
  File "C:\Users\<user>\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\contrib\auth\base_user.py", line 47, in <module>
    class AbstractBaseUser(models.Model):
  File "C:\Users\<user>\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\db\models\base.py", line 100, in __new__
    app_config = apps.get_containing_app_config(module)
  File "C:\Users\<user>\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\apps\registry.py", line 244, in get_containing_app_config
    self.check_apps_ready()
  File "C:\Users\<user>\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\apps\registry.py", line 127, in check_apps_ready
    raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

奇怪的是,当我在Atom上运行时,这个命令会给出一个错误,但是当我使用Django的shell运行时,它不会给出任何错误。我已经尝试在我的settings.py文件中输入以下命令

代码语言:javascript
复制
import django
django.setup()

但还是一无所获。

任何帮助都是非常感谢的。

编辑:我是从system python而不是virtualenv运行代码的。代码还不在GitHub上。Django版本是2.0.2。我的代码是:

代码语言:javascript
复制
from django.contrib.auth import authenticate
from django.contrib.auth.models import User

user = authenticate(username='john', password='secret')
if user is not None:
#  redirect to personal page
else:
  print(' ERROR pasword or username is not correct')
EN

回答 1

Stack Overflow用户

发布于 2018-06-03 01:37:50

在您的项目目录中启动cmd,并在项目的主目录中键入cd ( "manage.py“文件所在的位置)

然后,输入

代码语言:javascript
复制
python manage.py shell

现在您将进入python解释器,使用以下命令导入django:

代码语言:javascript
复制
import django

他们使用以下命令导入用户:

代码语言:javascript
复制
from django.contrib.auth.models import User

现在,采取任何你想要的行动。

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48756178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档