【问题标题】:Can't check profile model in django python shell无法在 django python shell 中检查配置文件模型
【发布时间】:2020-04-28 06:17:09
【问题描述】:

我正在尝试运行 django shell 以了解上传照片时发生的情况。

但是当我尝试过滤特定用户时

python manage.py shell
from django.contrib.auth.models import User
user = User.objects.filter(username='name').first()

我收到以下错误消息:

AttributeError: Manager 不可用; 'auth.User' 已替换为 'classroom.User'

我猜这与settings.py中的这个有关

AUTH_USER_MODEL = 'classroom.User'

我应该输入什么来查看配置文件模型

【问题讨论】:

    标签: python django django-shell


    【解决方案1】:

    你是对的,它确实与:

    AUTH_USER_MODEL = 'classroom.User'
    

    既然你指定了我认为是Custom User Model。在这种情况下,您必须使用 Django 的 docs 中指定的方法 get_user_model() 来引用您的新 User 模型。

    from django.contrib.auth import get_user_model
    User = get_user_model()
    

    【讨论】:

    • 谢谢,收到错误消息:from django.contrib.auth import get_user_model() ^ SyntaxError: invalid syntax
    • @Emm 在你的导入中去掉 ()。
    • 谢谢,现在出现这个错误:ImportError: cannot import name 'get_user_model' from 'django.contrib.auth.models' (C:\Users\User\Anaconda3\lib\site-packages\dj ango\contrib\auth\models.py)
    • 如你所见,你应该从 django.contrib.auth 导入
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-26
    • 2018-02-21
    • 2018-08-18
    • 1970-01-01
    相关资源
    最近更新 更多