//views.py
#搜索
def gotoSerach(request):
#获取客户端的小组名称---字符串(需要检索id)
searchTxt=request.GET.get("searchTxt")
#模糊查询
group=Group.objects.filter(groupName__contains=searchTxt)
list1=[]
for i in group:
#小组的所有id
#print(i.groupId)
#根据小组id获取小组人员
person=PersonName.objects.filter(groupId=i.groupId)
if person:
#print(person)
for i in person:
#print(i.groupId)
group=Group.objects.get(groupId=i.groupId)
#print(group.groupName)
# #组员的组id=组的名字
i.groupId=group.groupName
list1.append(i)
#分页
pageSize=3
paginator=Paginator(list1,pageSize)
#获取页面
p=request.GET.get("page")
#获取数据
try:
pageDatas=paginator.page(p)
except PageNotAnInteger:
#客户端传入的不是一个数字
pageDatas=paginator.page(1)
except EmptyPage:
#客户端传入的页面越界(超额)
pageDatas=paginator.page(paginator.num_pages)
return render(request,'user/showUser.html',{"person":pageDatas,"searchTxt1":searchTxt})
//html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>显示小组人员信息</title>
</head>
<body>
<h1>显示小组人员信息</h1>
<form action="/gotoSerach/" method="get">
<input type="text" name="searchTxt" required placeholder="请输入搜索的小组名称">
<input type="submit" value="搜索">
</form>
<table border="1" width="200">
<tr>
<td>id</td>
<td>组名</td>
<td>姓名</td>
</tr>
{% for i in person %}
<tr>
<td>{{i.userId}}</td>
<td>{{i.groupId}}</td>
<td>{{i.userName}}</td>
</tr>
{% endfor %}
</table>
<!-- 分页 -->
<div>
{% if person.has_previous %}
<a href="?page={{person.previous_page_number}}&searchTxt={{searchTxt1}}">上一页</a>
{% endif %}
{% for item in person.paginator.page_range %}
<a href="?page={{item}}&searchTxt={{searchTxt1}}">{{item}}</a>
{% endfor %}
{% if person.has_next %}
<a href="?page={{person.next_page_number}}&searchTxt={{searchTxt1}}">下一页</a>
{% endif %}
</div>
</body>
</html>