【问题标题】:Django Database queryingDjango 数据库查询
【发布时间】:2021-07-10 16:21:05
【问题描述】:

我在这里遇到一个问题,我想澄清一下,看,我正在制作一个分析数据的程序。 我想查询来自不同用户的数据,顺便说一下,数据是数字的,每当我从用户那里获得主题标记时,我希望系统返回具有这些标记的用户的名称。 一切正常,直到我尝试用相同的标记查询用户,我得到的只是一个错误

analyzer.models.ResultsALevel.MultipleObjectsReturned: get() returned more than one 
ResultsALevel -- it returned 4!

所以我试图找到一种方法来查询并返回具有该主题标记的用户的名称,即使他们具有相同的标记。 我相信这应该是可能的,因为用户有不同的 id 和东西,非常感谢帮助!

这是我的意见.py

biology_marks = []
    for student in ResultsALevel.objects.all():
        biology_marks.append(student.advanced_biology_1)
    value_1_biology = 
ResultsALevel.objects.get(advanced_biology_1=biology_marks[-1]).student_name.last_name
    value_2_biology = 
ResultsALevel.objects.get(advanced_biology_1=biology_marks[-2]).student_name.last_name
    value_3_biology = 
ResultsALevel.objects.get(advanced_biology_1=biology_marks[-3]).student_name.last_name
    value_4_biology = 
ResultsALevel.objects.get(advanced_biology_1=biology_marks[-4]).student_name.last_name

【问题讨论】:

    标签: python django database


    【解决方案1】:

    ObjectManager.get() 用于检索单个实例,通常由主键字段选择。

    在存在多个与查询匹配的数据的字段上使用 ObjectManager.get(),返回错误(MultipeObjectsReturned)

    使用 ObjectManager.filter() 代替。

    【讨论】:

    • 我会试试的,如果它有效,我会让你。虽然我认为这不能完全解决我的问题,因为我需要一种查询主题标记并能够区分标记属于哪个用户的方法。我该怎么做?
    猜你喜欢
    • 2018-03-03
    • 1970-01-01
    • 2019-03-30
    • 2016-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多