我收到以下错误,
模板'对象不可迭代
def get_AJAX(request, id):
data = serializers.serialize("json", Template.objects.get(pk=id))
return HttpResponse(data)
Run Code Online (Sandbox Code Playgroud)
但是,我正在使用,'get'
所以我不明白为什么我会收到此错误.有任何想法吗?
Pau*_* Bu 19
那是因为你没有传递一个iterable也没有传递QuerySet,而是传递一个Template
对象.如果要序列化该单个对象,可以这样做:
def get_AJAX(request, id):
data = serializers.serialize("json", [Template.objects.get(pk=id)])
return HttpResponse(data)
Run Code Online (Sandbox Code Playgroud)
更新:建议filter
改为使用.
filter
如果pk不存在,还可以考虑使用而不是get来避免可能的异常.这样您就不需要括号,因为它是一个QuerySet
对象
def get_AJAX(request, id):
data = serializers.serialize("json", Template.objects.filter(pk=id))
return HttpResponse(data)
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!
归档时间: |
|
查看次数: |
8916 次 |
最近记录: |