我试图通过DRF的Response()返回字典,但无法从字典中访问任何模型字段
我尝试在不将数据打包到字典的情况下返回单个字段的值,结果成功了。我知道Django的QuerySet是懒惰的,只在计算时命中DB,但我很困惑,为什么我的模型在字典中访问时突然没有字段
@api_view(['GET'])
def arDetail(request):
'''
gets data from model and puts it into a dict to be returned
'''
model = model.objects.get(pk=int(request.GET["pk"]))
#return Response(model.pk) WORKS here, but throws a nameerror
#when accessed in rspData
rspData = {
pk: model.pk,
problem: model.problem,
solution: model.solution,
primaryCategory: model.primaryCategory,
secondaryCategory: model.secondaryCategory,
profilePic: model.author.profilePic
}
return Response(rspData)
我需要从其他模型中提取URL等等,所以我不能像在其他模型上那样只使用DRF的序列化程序。应该做的是,我在字典中设置了每个必要的字段,然后用Response()返回,但我无法从rspData字典中访问模型字段。相反,Django会在dict的第一行抛出一个NameError(如果我注释掉字段以查找违规者,则还会抛出其他任何字段)
尝试:
你的口述缺少引号
相关问题 更多 >
编程相关推荐