我正在为我的django项目使用无尽的分页。在我将记录显示为报告的页面上,一切正常。
然而,当我包含一些"操作"根据我的记录,我有问题。
e.g。我的表行显示信息,并有一个额外的列,用户可以编辑表单。
{% extends "base/home.html" %}
{% load endless %}
{% block maincontent %}
{% paginate 5 atlist %}
<table> class="table">
{% for rec in atlist %}
<tr>
<!-- ... Headers ... and other columns code taken out .... -->
<td>
<button class="btn btn-primary btn-sm" onclick="location.href='/secure/editmytypes?ID={{rec.uuid}}'">Edit</button>
<button class="btn btn-primary btn-sm" onclick="location.href='/secure/deletemytypes?ID={{rec.uuid}}'">Delete</button>
</td>
</tr>
{% endfor %}
</table>
{{ pages.previous }} {{ pages.next }}
{% endblock %}
第一次加载上述模板时,{{pages.previous}} {{pages.next}}会显示正确的链接,例如
"/list?page=2"
如果我只进行下一页/上一页导航,则表现正常。
但是,当用户单击行中的编辑链接(编辑按钮)以转到编辑表单时 - 执行操作并返回此列表(两个表单保存数据并将控制权转移回此列表){ {pages.previous}} {{pages.next}}链接变为
"/secure/editmytypes?ID='..uuid...'&pages=2"
或
"/secure/deletemytypes?ID='..uuid...'&pages=2"
有没有人有我可以使用的指针?
提前致谢。
答案 0 :(得分:0)
将我的编辑返回控件的方式更改回此列表表单对我来说是个窍门。
我在做
# return render(request,'base/list_mytypes.html',{'atlist':mytypeslist,},)
这是问题..我把它改成了
return redirect('/secure/listmytypes',{'atlist':mytypeslist,},)
现在突然页面链接正常!!
在这里做一些R&amp; D,因为我认为两个快捷方式基本上都达到了相同的效果(我知道它们会返回不同的HttpResponse对象,但这对其他页面中的url不应该有任何影响 - 除非我在这里遗漏了一些东西)。