尝试获取字段值时出现属性错误

2024-01-16

我正在使用 django 休息框架,并且我尝试使用的序列化器正在创建错误。我正在尝试做类似的事情https://gist.github.com/anonymous/7463dce5b0bfcf9b6767 https://gist.github.com/anonymous/7463dce5b0bfcf9b6767但我仍然收到错误。模型是

class Visitor(models.Model):

user = models.OneToOneField(User)
check_ins = models.IntegerField(default=0)

@classmethod
def create(cls, username, email, password):
    user = User.objects.create_user(username, email, password)
    visitor = cls(user=user)
    visitor.save()
    return visitor

def __str__(self):
    return self.user.username

默认用户类和序列化器是

class UserSerializer(serializers.ModelSerializer):
    class Meta:
        model=User
        fields = ('username')

class VisitorSerializer(serializers.ModelSerializer):
    user = UserSerializer()

    class Meta:
        model=Visitor
        fields = ('id','check_ins','user')

我收到这个错误

尝试获取字段值时出现 AttributeErroruser在串行器上VisitorSerializer。 序列化器字段可能命名不正确并且与序列化器上的任何属性或键不匹配QuerySet实例。 原始异常文本是:“QuerySet”对象没有属性“user”。


问题是您将查询集传递到序列化器中而没有设置many旗帜。该错误告诉您序列化程序正在尝试访问queryset.user当它应该访问时visitor.user,因此您需要通过传递告诉序列化器有多个对象(而不是单个对象)many=True.

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

尝试获取字段值时出现属性错误 的相关文章

随机推荐

  • 如何将 .XLS 和 .XLSX 文件转换为 .PDF 格式并将它们返回到 Powershell 中的每个原始子文件夹?

    我目前有一个 powershell 脚本 可以很好地将 Excel 电子表格转换为 PDF 文件 但我的问题是新文件出现在父文件夹中 而不是它们来自的特定子文件夹中 我当前的脚本如下所示 path c users me Documents
  • 在 PostgreSQL 中对 JsonB 数组进行 Sequelize ORM 查询

    如何使用一些匹配条件和逻辑运算 lt et gte等 在 Jsonb 对象数组上 在 PostgreSQL 中使用 Sequelize ORM 表名 calls id direction metaData 1 inbound 2 outbo
  • 使用 Javascript 比较 HTML 中的两个输入数字?

    我正在使用 Notepad 创建一个简单的网页 用户在文本框中输入两个数字 然后按下按钮 当他们按下按钮时 会出现一些信息 告诉他们第一个数字还是第二个数字更大 我有以下代码 但无法得到任何结果 有谁知道出了什么问题吗
  • XML 新版本 - 新功能

    XML 有新版本了吗 如果是的话 它是什么时候发布的 有哪些新功能 目前 基本 XML 规范中的新功能不太可能出现 当然 XML 系列中的其他标准将会继续发展 但 XML 本身非常稳定 该标准有多个 版本 到目前为止为止是第五版 但这些仅仅
  • 如何在编译时推断嵌套 std::vector 的内部类型?

    有一天我问了一个非常类似的问题 https stackoverflow com questions 59490698 how can i get the depth of a multidimensional stdvector at co
  • 将多维数组转换为字符串并返回

    我有一个二维数组 我需要能够将其转换为字符串表示形式并返回数组格式 我想创建一个通用方法来处理任何数组 1d 2d 3d 等 这样我将来就可以重用该方法 解决这个问题的最佳方法是什么 string array new string help
  • 手动添加声明文件 (TypeScript)

    我没有找到 google spreadsheet 的声明文件 因此我尝试自己创建一个 在打字 gt 模块中 我添加了一个名为 google spreadsheet 的新文件夹 并在其中添加了一个名为 index d ts 的新文件 其中包含
  • 更新 Spring 注入的属性文件以包含上次运行时间戳

    我有一个应用程序 它使用 Spring 加载的属性文件 然后将 Properties 实例注入到几个类中 问题是其中一些属性已更新 例如我们有一个要存储在这里的lastRun时间戳 也许有更好的方法来存储这样的东西 欢迎建议 但是我该如何更
  • 对于具有相同分数的文档,主/副本的结果顺序不一致

    我创建了一个包含单个分片和 1 个副本的索引 我正在运行 ElasticSearch 版本 1 0 1 并且集群有 3 个节点 我注意到 有时具有相同分数的文档的结果排序是 根据是否针对主数据库和副本数据库运行相同的查询而有所不同 该查询是
  • 从 System.Windows.Media.Geometry 获取坐标列表

    Given a System Windows Media Geometry类实例 有没有一种简单的方法可以将其转换为轮廓和点列表 例如 我怎样才能简单地将其分解为一个列表LineSegments用于自定义渲染 FormattedText f
  • “springSecurityFilterChain”抛出异常;嵌套异常是 java.lang.IllegalArgumentException:提供程序列表不能包含空值

    在启动 SpringBoot 应用程序时 我不断收到以下错误 与我有关吗SpringWebSecurityConfig文件 以下是文件内容 Configuration public class SpringWebSecurityConfig
  • 如何从 System.Windows.Input.KeyEventArgs 获取按下的字符?

    I have System Windows Input KeyEventArgse 变量 我想得到真正的字符 例如 我按 键盘上的按钮 通常它会返回类似的字符串oem 但我想得到 字符 怎么做 编辑 我在 TextBox 中使用它 看到这个
  • 为什么加载后命令提示符消失了?

    使用下面的代码 命令提示符几乎在出现后立即消失 此代码不应该显示正在使用的所有可移动驱动器吗 using System Linq using System IO using System namespace ConsoleApplicati
  • 通过 cron 发布到 Facebook

    两天来我一直在尝试将从 Twitter 搜索收集的消息自动发布到我的 Facebook 页面之一 即通过 cronjob twitter 部分运行得很好 但我怎么也无法让 Facebook 部分工作 问题是我的脚本可以工作 直到它不能工作
  • Visual Studio 代码未加载我的 python 解释器

    在这个项目中 我一直在使用我在 venv 中设置的 python 解释器 最近我更改了我的 python 解释器 我在用户设置中将其设置为默认解释器 例如 vs 文档vs code python 环境 https code visualst
  • EXC_BAD_ACCESS 使用 IBInspectable

    我正在尝试使用IBInspectable为我的视图添加边框 extension UIView private func getBorder integer Int gt UIRectEdge if integer 1 return top
  • 在 forEach 之后发送响应

    请注意 这不是两个类似标题问题的重复 这两个问题使用 Mongoose 并且答案仅适用于 Mongoose 查询 我有一个目录列表 每个目录都包含一个文件 我想返回一个 JSON 列表 其中包含每个文件的内容 我可以毫无问题地加载文件 但是
  • Python 检查值是否在字典列表中

    我有一个字典列表 例如 name Bernard age 7 name George age 4 name Reginald age 6 我想检查字符串值是否与列表中任何字典中的 名称 值相同 例如 Harold 将为 False 但 Ge
  • XMPP:检索 BOSH 会话 ID 和 RID

    请告诉我如何检索 SID 和 JID 我正在使用 Strope JS var conn new Strophe Connection bosh service 然而 conn sid or conn rid没有返回相同的数字 经过这个和那个
  • 尝试获取字段值时出现属性错误

    我正在使用 django 休息框架 并且我尝试使用的序列化器正在创建错误 我正在尝试做类似的事情https gist github com anonymous 7463dce5b0bfcf9b6767 https gist github c