Django Rest Framework - 注册后返回用户 ID 和令牌

2024-02-04

我尝试注册用户并返回令牌和用户 ID。像这样做

from django.shortcuts import render
from rest_framework.response import Response
from rest_framework.authtoken.models import Token
from rest_framework import status
from django.contrib.auth import get_user_model

User = get_user_model()

class CreateUser(CreateAPIView):
    queryset = Profile.objects.all()
    serializer_class = UserSerializer

    def create(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        self.perform_create(serializer)
        headers = self.get_success_headers(serializer.data)
        token, created = Token.objects.get_or_create(user=serializer.instance)
        user = User.objects.filter(user=serializer.instance)
        return Response({'token': token.key, 'id':user.id}, status=status.HTTP_201_CREATED, headers=headers)

我收到一个错误

Cannot resolve keyword "user" into field. Choices are: auth_token, date_joined, email, first_name, groups, id, is_active, is_staff, is_superuser, last_login, last_name, logentry, password, user_permissions, username

我究竟做错了什么 ?


错误就在这行

user = User.objects.filter(user=serializer.instance)

首先,没有名为的字段user在你的User模型。其次,你不需要过滤User模型来获取创建的用户,因为您已经拥有该用户serializer.instance。因此,不需要那条线。

如果你只是想要id,你可以使用serializer.instance.id.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django Rest Framework - 注册后返回用户 ID 和令牌 的相关文章

随机推荐

  • java中可以有多个堆吗?

    java中可以有多个堆吗 如果可能的话 那么在什么情况下会发生呢 已经存在多个内存区域 但只有一个 Java 堆 通常有 Java heap which might be broken into 伊甸园空间 幸存者空间 任期空间 用于小型直
  • UICollectionView 和 SwiftUI?

    如何使用 SwiftUI 创建方形项目网格 例如在 iOS 照片库中 我尝试了这种方法 但它不起作用 var body some View List cellModels in Color orange frame width 100 he
  • 并排均匀打印 2 个均匀填充的列表

    我使用以下代码生成 2 个列表 nameList 和gradeList nameList gradeList for row in soup find all tr name row select th strong grade row s
  • Eclipse 问题 - 启动错误:无法连接到远程虚拟机。连接超时

    我收到消息 启动错误 无法连接到远程虚拟机 连接超时 每次我在读取设备上调试我的应用程序时 我在 AndroidManifest 中添加了
  • 如何通过 Go SDK 流式传输 Docker 容器日志

    我正在为 Go 中的一些游戏服务器软件编写一个工具 名为sampctl https github com Southclaws sampctl主要功能是为服务器实例启动 Docker 容器 然后捕获从容器中发出的日志 稍微清理一下并将它们发
  • iOS7 标签栏图标太大

    似乎我在处理像图标这样简单的事情时遇到了困难 我正在构建一个仅适用于 iOS7 的应用程序 因此设备是视网膜显示屏 不包括 iPad 2 所以我为我的标签栏制作了一些 60 x 60 的图标 然而这些太大了 而且 30 x 30 有点像素化
  • 从自定义 SurfaceView 获取位图

    我在一个扩展表面视图并实现可运行的类中有这段代码 我能够使用该类基本上允许您使用不同的颜色等绘制到画布上 我正在尝试找到一种方法 该方法允许我在绘制图像后保存图像 这就是方法 无论我做什么 我都会得到一张没有任何内容的黑色图像 有任何想法吗
  • Java - 字符缓冲区问题

    我有一个 1 99 GB 的字符文件 现在 我想从该文件中随机提取数百万个子序列 例如从位置 90 到 190 10 到 110 50000 到 50100 等 每个子序列长 100 个字符 我通常使用 FileChannel channe
  • 如何使用多线程进行zlib压缩(相同输入源)

    我的目标是在并行线程中压缩同一源的数据 我已经定义了列表中的作业 这些作业具有读取信息 每个作业中 500kb 1MB 我的压缩器线程将使用 ZLIB 压缩每个块的数据并将其存储在相应作业的 outbuf 中 现在 我想合并所有这些并创建一
  • 如何检测用户是否在浏览器中启用了全屏

    当用户在 Chrome 或 FireFox 中启用全屏时 是否会触发一些 JavaScript 事件 我有 WebGL 应用程序 画布宽度和高度设置为一定大小 当用户启用全屏时 我想调整其大小 如果没有这样的事件 我是否应该开始研究用画布填
  • 如何在 PyQt5 中使用全局键盘快捷键显示 QMenu?

    我试图通过热键 例如 F1 显示 QMenu 实例PyQt5 然后我找到了这个包keyboard https pypi org project keyboard 尝试像这样使用它 keyboard add hotkey F1 self sh
  • 将 HTML 表转换为 JSON

    我正在尝试将通过 BeautifulSoup 提取的表转换为 JSON 到目前为止 我已经成功隔离了所有行 但我不确定如何使用这里的数据 任何建议将非常感激 tr td strong Balance strong td td strong
  • WP8.1后退按钮退出应用程序

    上次我针对 Windows Phone 进行开发时使用的是版本 8 现在我正在使用 8 1 也许这是微软的一项新功能 但是当我按下手机上的后退按钮时 无论我对应用程序的了解有多深 应用程序都会最小化 这真的很烦人 有什么我可以做的吗 提前谢
  • 自动填充子图

    我正在编写一个 python 脚本 该脚本将 1 获取每个子图的 y 值列表 以针对一组通用的 x 值进行绘制 2 将每个子图设为散点图并放置将其放置在子图网格中的适当位置 并且 3 针对不同大小的子图网格完成这些任务 第三个语句的意思是
  • 我是否需要更改 xml 代码以支持所有屏幕尺寸的 Android 设备?

    我已经为不同的屏幕尺寸创建了布局 这是我的默认布局的 xml 代码 但所以任何人请告诉我应该做什么来支持任何屏幕尺寸的 Android 设备的布局 我需要更改我的 xml 代码吗 或者 只是我需要修改我的xml代码吗 请告诉我 以便我解决我
  • Python 2.7 的 Shebang 线

    我已经在我的Linux Centos中安装了Python2 7 它默认安装了Python2 6 默认Python root linuxhost PythonProjects python V Python 2 6 6 默认Python2 7
  • 错误:找不到字段的设置器。 - java.util.ArrayList 中的大小 - Room 中的嵌入式 ArrayList 无法编译

    我在将 Android 4 1 2 更新到 4 2 2 后收到此错误消息 但在将 Android Studio 更新到 4 1 2 以上的任何版本后收到此错误消息 What went wrong Execution failed for t
  • 如果模型实现了 INotifyPropertyChanged,ViewModel 应该如何注册/取消注册 PropertyChanged 事件?

    我有一个实现的模型INotifyPropertyChanged并且它可能会被后台业务线程更新 其相关ViewModel也实现了INotifyPropertyChanged 他们的 View 显然绑定到 ViewModel 该视图可能会显示在
  • 合并两个数据框,两者的坐标都基于最近的位置

    我有一个包含局部变量的大型数据框 约 130000 行 和另一个包含物种密度的大型数据框 约 7000 行 两者都有 x 和 y 坐标 但这些坐标并不总是匹配 例如 df1 lt data frame X c 2 4 1 2 5 Y c 6
  • Django Rest Framework - 注册后返回用户 ID 和令牌

    我尝试注册用户并返回令牌和用户 ID 像这样做 from django shortcuts import render from rest framework response import Response from rest frame