【发布时间】:2015-02-25 08:53:19
【问题描述】:
当我尝试将数据编码为 json 时发生错误。错误是由于分页造成的。我想要json编码的数据。
这是我用于从 db 获取结果然后将其编码为 json 的代码
views.py
def pagination(obj, request):
max = request.GET.get('max') if 'max' in request.GET else 1
paginator = Paginator(obj, max) # Show 25 contacts per page
page = request.GET.get('page')
try:
return paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
return paginator.page(1)
except EmptyPage:
return ""
def folder_list(request):
folders = UserFolder.objects.filter(creator=request.user).order_by('-modified_date')
folders_dict = []
for folder in folders:
d = {}
for k, v in folder.__dict__.items():
d[k] = str(v)
d["creator__first_name"] = folder.creator.first_name
folders_dict.append(d)
folders = Common.pagination(folders_dict, request)
folders = json.dumps(folders)
return HttpResponse(folders)
任何帮助将不胜感激。
谢谢
【问题讨论】:
-
你可以重写这行
request.GET.get('max') if 'max' in request.GET else 1如下:request.GET.get('max',1)你可以在这里阅读更多信息:docs.python.org/2/library/stdtypes.html#dict.get
标签: python json django pagination