Django postStream的类型错误↵';布尔';对象不可编辑↵↵;请求方式:POST↵;要求
我有下面的代码,希望返回id>jquery发布值的前1条记录Django postStream的类型错误↵';布尔';对象不可编辑↵↵;请求方式:POST↵;要求,django,Django,我有下面的代码,希望返回id>jquery发布值的前1条记录 def postStream(request): post = PostEntry.objects.filter(id > request.POST['maxpostid'])[:1] response_text = serializers.serialize('json', [post,]) return HttpResponse(request.POST['maxpostid'], content_
def postStream(request):
post = PostEntry.objects.filter(id > request.POST['maxpostid'])[:1]
response_text = serializers.serialize('json', [post,])
return HttpResponse(request.POST['maxpostid'], content_type='application/json')
由于某些原因,它给出了以下错误
postStream中的类型错误↵'布尔对象是不可编辑的↵↵要求
方法:邮寄↵请求
我可以确认request.POST['maxpostid']
给出了预期值
def postStream(request):
post = PostEntry.objects.filter(id > request.POST['maxpostid'])[:1]
response_text = serializers.serialize('json', [post,])
return HttpResponse(request.POST['maxpostid'], content_type='application/json')
我做错了什么吗?您应该在queryset中使用附录,而不是
签名。试试这个:
post = PostEntry.objects.filter(id__gt=request.POST['maxpostid']).first()
您应该在queryset中使用附录,而不是
签名。试试这个:
post = PostEntry.objects.filter(id__gt=request.POST['maxpostid']).first()
您需要在筛选器中使用=
或
检查更大
post = PostEntry.objects.filter(id__gt = request.POST['maxpostid']).first()
并将数据发送到html
response_text = serializers.serialize('json', [post,])
return HttpResponse(response_text , content_type='application/json')
您需要在筛选器中使用=
或
检查更大
post = PostEntry.objects.filter(id__gt = request.POST['maxpostid']).first()
并将数据发送到html
response_text = serializers.serialize('json', [post,])
return HttpResponse(response_text , content_type='application/json')
使用
\u gt
检查并使用get
从POST数据中获取maxpostid
。
另外,我认为您希望返回序列化数据:
post = PostEntry.objects.filter(id__gt=request.POST.get('maxpostid')).first()
data = serializers.serialize('json', [post,], fields=('id',))
return HttpResponse(data, content_type='application/json')
使用
\u gt
检查并使用get
从POST数据中获取maxpostid
。
另外,我认为您希望返回序列化数据:
post = PostEntry.objects.filter(id__gt=request.POST.get('maxpostid')).first()
data = serializers.serialize('json', [post,], fields=('id',))
return HttpResponse(data, content_type='application/json')
id是列名,当我用id_ugt替换它时,我在postStream中得到了一个错误AttributeError↵'QuerySet“object has no attribute”\u如果没有找到记录,是否需要将其替换为类似first或default的内容?有这样的选项吗?我是否需要删除first(),因为如果没有记录,这将导致崩溃found@Pankaj不,你没有。如果queryset为empty
first
将返回None。查看doc的这一部分:我正在尝试这样做postRecords=PostEntry.objects.filter(id\u gt=id)if(postRecords.exists()):post=postRecords.first()其他:post=None
我是否缺少任何东西id是我用id\u gt替换它时的列名,我在postStream中得到了一个错误AttributeError↵'QuerySet“object has no attribute”\u如果没有找到记录,是否需要将其替换为类似first或default的内容?有这样的选项吗?我是否需要删除first(),因为如果没有记录,这将导致崩溃found@Pankaj不,你没有。如果queryset为emptyfirst
将返回None。查看doc的这一部分:我正在尝试这样做postRecords=PostEntry.objects.filter(id\u gt=id)if(postRecords.exists()):post=postRecords.first()其他:post=None
我是否缺少任何东西id是我用id\u gt替换它时的列名,我在postStream中得到了一个错误AttributeError↵'QuerySet“object has no attribute”\u如果没有找到记录,是否需要将其替换为类似first或default的内容?有这样的选项吗?id是列名,当我用id_ugt替换它时,我在postStream中得到了一个错误AttributeError↵'QuerySet“object has no attribute”\u如果没有找到记录,是否需要将其替换为类似first或default的内容?有这样的选择吗?