24、Django实战第24天:讲师列表页
1、复制teracher-list.html到templates目录下
2、编辑teacher-list.html,继承base模板

3、编辑organization.views.py
...
from .models import Teacher class TeacherListView(View):
def get(self, request):
all_teachers = Teacher.objects.all()
return render(request, 'teachers-list.html', {
'all_teachers': all_teachers,
})
4、配置url,编辑organization.urls.py
...
from .views import TeacherListView urlpatterns = [
...
url(r'teacher/list/$', TeacherListView.as_view(), name='teacher_list' ), ]
5、修改index.html,base.html中的授课教师链接

6、先把所有的讲师都展示出来

分页
编辑organization.views.py
class TeacherListView(View):
def get(self, request):
all_teachers = Teacher.objects.all() # 分页
try:
page = request.GET.get('page', 1)
except PageNotAnInteger:
page = 1
p = Paginator(all_teachers, 2, request=request)
teachers = p.page(page) return render(request, 'teachers-list.html', {
'all_teachers': teachers,
})
编辑前端页码

修改前面的展示教师列表

人气排序 和统计教师
编辑organization.views.py
class TeacherListView(View):
def get(self, request):
all_teachers = Teacher.objects.all() # 人气排序
sort = request.GET.get('sort', '')
if sort:
if sort == 'hot':
all_teachers = all_teachers.order_by('-click_nums') # 统计教师数
teacher_nums = all_teachers.count() # 分页
try:
page = request.GET.get('page', 1)
except PageNotAnInteger:
page = 1
p = Paginator(all_teachers, 2, request=request)
teachers = p.page(page) return render(request, 'teachers-list.html', {
'all_teachers': teachers,
'sort': sort,
'teracher_nums': teacher_nums
})
前端配置

讲师排行榜
编辑organization.views.py
class TeacherListView(View):
def get(self, request):
all_teachers = Teacher.objects.all() # 人气排序
sort = request.GET.get('sort', '')
if sort:
if sort == 'hot':
all_teachers = all_teachers.order_by('-click_nums') # 统计教师数
teacher_nums = all_teachers.count() # 讲师排行榜
rank_teachers = all_teachers.order_by('-click_nums')[:2] # 分页
try:
page = request.GET.get('page', 1)
except PageNotAnInteger:
page = 1
p = Paginator(all_teachers, 2, request=request)
teachers = p.page(page) return render(request, 'teachers-list.html', {
'all_teachers': teachers,
'sort': sort,
'teracher_nums': teacher_nums,
'rank_teachers': rank_teachers,
})
前端展示

24、Django实战第24天:讲师列表页的更多相关文章
- mxonline实战13,授课讲师列表页,详情页,index页面全局导航
对应github地址:第13天 把teacher-list.html和teacher-detail.html拷贝过来 一. 授课讲师列表页 1. 修改html文件 把org-list.ht ...
- 微信小程序 项目实战(三)list 列表页 及 item 详情页
1.项目结构 2.list 列表页 (1)数据(逻辑) list.js // pages/list/list.js Page({ /** * 页面的初始数据 */ data: { title: '加载 ...
- [Django实战] 第8篇 - 分页列表
当用户登录成功后,首先看到的是他自己之前提交的任务列表,本篇将实现该页面. 视图(views.py)里定义如下: from django.core.paginator import Paginator ...
- 14、Django实战第14天:列表筛选功能
今天完成的是点击这些条件进行机构的筛选 首先来完成城市:当用户点击城市的时候,我们自动给它加一个参数(city.id) 编辑organization.views.py 刷新页面,发现筛选功能已经OK了 ...
- 25、Django实战第25天:讲师详情页
1.复制teacher-detail.html到templates目录下 2.编辑teacher-detail.html,继承base.html 3.编辑organization.view.py cl ...
- iOS 杂笔-24(常用类到NSObject的继承列表)
iOS 杂笔-24(常用类到NSObject的继承列表) NSString NSObject->NSString NSArray NSObject->NSArray ↑OC基本类都直接继承 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)]
[易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)] 项目实战 实战2:命令行工具minigrep 有了昨天的基础,我们今天来开始另一个稍微有点 ...
- 19、Django实战第19天:课程列表页
从今天开始,我们将完成"公开课"课程的相关功能..... 1.把course-list.html复制到templates目录下 2.这个页面的头部.底部与之前定义的base.htm ...
- 13、Django实战第13天:分页列表功能
我们看课程 机构列表页是需要分页的 为了完成分页功能,我们需要用到Django的一个开源开发库django-pure-pagination workon mxonline pip install dj ...
随机推荐
- [NOI.AC省选模拟赛3.23] 染色 [点分治+BFS序]
题面 传送门 重要思想 真的是没想到,我很久以来一直以为总会有应用的$BFS$序,最终居然是以这种方式出现在题目中 笔记:$BFS$序可以用来处理限制点对距离的题目(综合点分树使用) 思路 本题中首先 ...
- 创建dll
在制作dll的时候,如果全局变量不导出,而函数调用中,包含了全局变量,那么会出现全局变量没有值的问题. add.c #pragma once //强制无签名utf-8 #include "a ...
- 活泼的CSS 3动态气泡按钮制作
这一次,我们正在创造一个有用的设置与对CSS3的多重背景和动画的力量动画按钮.通过此按钮包,您可以很容易地变成一个动画按钮,在您的网页上的任何链接只是指定一个类名.没有必要JavaScript.四色主 ...
- es6+最佳入门实践(14)
14.模版字符串 模版字符串(template string)是增强版的字符串,定义一个模版字符串需要用到反引号 let s = `这是一个模版字符串` console.log(s) 14.1.模版字 ...
- mybatis 关系映射
一:订单商品数据模型 1.数据库执行脚本 创建数据库表代码: 1 CREATE TABLE items ( 2 id INT NOT NULL AUTO_INCREMENT, 3 itemsname ...
- rpmdb open failed解决方案
1.前提条件:安装软件包的时候,被我手动终止了(可能出错原因)[root@dhcp yum.repos.d]# yum clean allrpmdb: Thread/process 4541/1406 ...
- 2017南宁现场赛E The Champion
Bob is attending a chess competition. Now the competition is in the knockout phase. There are 2^r2r ...
- 不谈OI:高二(13)最后一次班班有歌声
最后一次班班有歌声了…… 自己因为搞oi并没有参加,只是决赛的时候幕后放了放背景视频…… 不管怎么说,我们班唱的很棒啊,全部人都很棒! 说真的我为我们班骄傲 视频: https://v.qq.com/ ...
- kdtree学习记录
[转载请注明来自 Galaxies的博客:http://cnblogs.com/galaxies] 这篇文章当做一个记录啦qwq 参考:<K-D Tree在信息学竞赛中的应用>(n+e, ...
- codevs1163访问艺术馆 树形dp
算裸的树形dp吧 回来复习一波 #include<cstdio> #include<cstring> #include<algorithm> #include< ...