对不起,如果它是一个菜鸟代码或问题。我正在使用 django-pagination 进行分页,我这样做是这样的。但这在我的页面上给了我 keyError 并且它提到它在模板渲染期间出现错误。我在这里做错了什么。我已经成功安装了分页,修改了 settings.py 文件。但我不知道我需要在这里做什么。任何帮助将不胜感激。
<table class="active_table" summary="active_user">
<thead>
<tr><th>Name</th><th>Mobile Number</th><th>Count</th></tr>
</thead>
<tbody id="table_content">
{% load pagination_tags %}
{% block content %}
{% autopaginate response_data 5 %}
{% for b in response_data %}
<tr class="table_rows"><td>{{ b.name }}</td><td>{{ b.mobile_number }}</td><td>{{ b.count }}</td></tr>
{% endfor %}
{% paginate %}
{% endblock %}
</tbody>
</table>
详细的回溯粘贴在这里http://dpaste.com/919526/
视图代码如下
视图.py
@csrf_exempt
def active_user_table(request, b): if request.method != "GET": raise Http404
if (b=='4'):
cursor = connection.cursor()
cursor.execute("SELECT core_user.id, name,mobile_number,COUNT(*) as count, created FROM core_user,core_useractivity WHERE core_user.id = core_useractivity.user_id GROUP BY user_id ORDER BY count DESC")
response_data = dictfetchall(cursor)
return render_to_response("siteadmin/active_user_table.tmpl",{'response_data':response_data})
elif (b=='3'):
cursor = connection.cursor()
cursor.execute("SELECT core_user.id, name, mobile_number, COUNT(*) as count, created FROM core_user, core_useractivity WHERE core_user.id = core_useractivity.user_id AND MONTH(CAST(created as date)) = MONTH(NOW()) AND YEAR(cast(created as date)) = YEAR(NOW()) GROUP BY user_id ORDER BY count DESC")
response_data = dictfetchall(cursor)
return render_to_response("siteadmin/active_user_table.tmpl",{'response_data': response_data})
elif (b=='2'):
cursor = connection.cursor()
cursor.execute("SELECT core_user.id, name, mobile_number, COUNT(*) as count, created FROM core_user, core_useractivity WHERE core_user.id = core_useractivity.user_id AND DATEDIFF(NOW(), created) <= 7 GROUP BY user_id ORDER BY count DESC")
response_data = dictfetchall(cursor)
return render_to_response("siteadmin/active_user_table.tmpl",{'response_data': response_data})
elif (b=='1'):
cursor = connection.cursor()
cursor.execute("SELECT core_user.id, name, mobile_number, COUNT(*) as count, created FROM core_user, core_useractivity WHERE core_user.id = core_useractivity.user_id AND DATE(created) = DATE(NOW())")
response_data = dictfetchall(cursor)
return render_to_response("siteadmin/active_user_table.tmpl",{'response_data': response_data})
else:
raise Http404
抱歉,我现在没有使用 django ORM,但我将来会这样做。