django - Django - 如何使用 get_object_or_404 获取自定义用户模型
问题描述
我想检索我的User
类的一个实例,它扩展了AbstractBaseUser
. 我还想使用 djangoget_object_or_404
快捷方式通过主键过滤我的用户,但这不起作用:
from django.shortcuts import get_object_or_404
from django.conf import settings
user = get_object_or_404(settings.AUTH_USER_MODEL, pk=pk)
引发以下异常:
"ValueError at /v1/users/24c47b4a-920e-47c7-902c-80c64c0dd657/
First argument to get_object_or_404() must be a Model, Manager, or QuerySet, not 'str'.
在 mysettings.py
中,这就是我的AUTH_USER_MODEL
样子:
AUTH_USER_MODEL = 'users.User'
有没有办法做到这一点?
解决方案
也许你可以使用这个解决方案:
from django.shortcuts import get_object_or_404
from django.conf import settings
user = get_object_or_404(get_user_model(), pk=pk)
推荐阅读
- python - 如何让 Python 返回函数的抽象表达式并获取其中的参数?
- javascript - Laravel:节点模块不可用
- python - pygame 加载更改文件名的图像
- python - Pyspark:根据多个值的条件进行计数
- spring - Spring Application - 正在使用哪个日志框架?
- azure - Azure DNS CNAME 子域
- java - Java Spring Boot 中的 Firebase 上传
- rest - REST API 设计认证用户:/products 或 /
/产品 - firebase - Firebase 实时数据库比本地 MySQL 服务器慢
- javascript - 如何从我希望返回的函数内部的函数内部返回函数的值